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

syncjs

v2.0.2

Published

sync.js let's you keep your remote files in sync with your local copy. Whenever you make a change on your local project, sync.js uploads the changed files to remote server using `scp` command.

Downloads

7

Readme

Syncjs - Upload changed local files to remote server

Syncjs is an easy to use command line tool for uploading your local changes to a remote server.

It's useful in situations where your application needs to be on a remote server to run (dev machines, pubdev environments, etc.) but you still want to use your local environment for development. You can simply map you local copy of the project to the remote version and syncjs will do the rest.

Syncjs in use

This example shows usage with Visual Studio Code but since it's an external script, you can use it with any editor you want.

Vim Example

Features

  • Easy to setup
  • Fast and reliable
  • Runs independently from your toolchain so you can use it with anyting
  • Runs on windows, osx and linux
  • detects and handles changes on folders
  • can run multiple instances at the same time

Installation

Syncjs is easy to install, just execute the following

npm install -g syncjs

After this you'll have syncjs binary available to you.

Configuration

Syncjs comes with an init script and sets itself up for you. All you need to do is to cd into your projects directory and run syncjs init it will ask few simple questions and create the config file called sync-config.json make sure you include this file in your .gitignore because this file might contain passwords or secrets depending on your preferences.

cd /my/project/folder
syncjs init

Configuration

Questions on config

  • Username: your username that you use to connect to remote machine

  • Auth method:

    • Password in config: This the least secure version of auth. It will keep your password in the config file as plain text do not use this please
    • Ask during connect: This option will ask your password again every time you start syncjs your password will not be stored anywhere.
    • Private Key: Most secure option, just provide the path for your key file and syncjs will do the rest
  • Hostname or IP of the server: Tell syncjs where to connect

  • Port to connect: defaults to 22 this usually is what you want

  • Local path: syncjs will automatically detect this as the root of your project, but if you only want to sync one specific folder, provide it here as full path

  • Remote path: This is where copy of your local folder lives in the remote server. Make sure you type full path here as well.

License

MIT