npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

syncgit

v1.0.3

Published

syncs a local repo with remote

Downloads

9

Readme

SyncGit

Syncronize a local branch with the remote counterpart using github's webhooks services.

Why?

I write code on my laptop and push it to a non-production development server for testing. This model is great for my workflow. I offload app processing from my laptop and can test unimpeded in a near-production environment with a no-nonsense build/deploy system. Plus it's secure and forces me to keep a good commit history.

This will take a few steps of configuration per specific environment.

This is intended to be installed with a project and run in the same repo you are developing on. So it's node-only for now. It also relies on github's webhooks infrastructure, so it is limited to github-based projects.

Usage

node syncgit -s secret [-b branch] [-p port] [-r route]
  secret - the secret of the associated webhook
  [branch] - (default 'master') the branch you will be syncing with
  [port] - (default 3021) port that the webhook should listen on.
  [route] - (default /nodedevhook) the route endpoint of the webhook

Launch the service

Use whatever means necessary to launch the system in a persistent way (so that it will stay alive while you do other things).

!Important! Make sure you remember the value you use for the secret. This doesn't have to be super secure, just enough that it might not be guessed.

Register a webhook to an open endpoint.

Your system will need to be open to the internet to receive update events from github's webhooks services.

  1. Go to the github page for the repo.
  2. Click "Settings" (it's on the right)
  3. Click "Webhooks and Services"
  4. Click "Add a Webhook" and confirm your password
  5. Enter https://[exampledomain.com]:3021/nodedevhook in the given prompt. (you can configure port and route should match the arguments you passed to the command)

Your system needs to be accessible by github from the web. Make sure you are using an open port!

  1. Enter the secret value you provided to the command to begin with. REMEMBER this, you'll have to provide it to the syncgit script each time you rerun it.
  2. click "Add Webhook".
  3. Done! Start rapidly developing/testing webapps in a near-production environment.