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

core.io-cli-local-env

v0.7.0

Published

CLI utility to create local development environments

Downloads

12

Readme

core.io-cli-local-env

core.io cli tool to manage local environments for development.

Install

It can be installed globally and it will be available as shuttle. To install run npm i -g core.io-cli-local-env.

Local Development Environment

CLI

   shuttle 0.0.1 - CLI utility to create local development environments

   USAGE

     shuttle <command> [options]

   COMMANDS

     install                     Install all dependencies. Needs sudo          
     list                        List all local domains                        
     open <domain>               Open domain in default browser                
     share <project>             Generate a shareable URL for a project        
     restart                     Restart Caddy and Dnsmasq services            
     stop                        Stop Caddy and Dnsmasq services               
     start                       Start Caddy and Dnsmasq services              
     serve <domain> <proxy>      Proxy a local domain and save it 
     remove <domain>             Remove a previously added domain              
     update                      Update toolchain                              
     uninstall                   Uninstall all files and binaries              
     help <command>              Display help for a specific command   

   GLOBAL OPTIONS

     -h, --help         Display help
     -V, --version      Display version
     --no-color         Disable colors
     --quiet            Quiet mode - only displays warn and error messages
     -v, --verbose      Verbose mode - will also output debug messages

   MORE INFO

     This program uses Caddy server and Dnsmasq. It generates various files and uses brew to install dnsmasq.

MacOS

Local domains

Since browsers started forcing .dev domains to HTTPS via preloaded HSTS it became apparent that using .dev for local development might not be a good idea.

Another popular option are .local domains, but those might have name resolution issues with multicast DNS software- e.g. Bonjour.

We are going to use .test domains.

For each development domain you want to support you need to create a entry in your mac's resolvers directory- you might need to create the directory if not present:

$ sudo mkdir /etc/resolver

Create a file with the name of the domain, test in our case, and add the following line nameserver 127.0.0.1. A quick way of doing this:

$ sudo echo "nameserver 127.0.0.1" > /etc/resolver/test

After you add the file if you scutil --dns you should see an entry:

resolver #11
  domain   : test
  nameserver[0] : 127.0.0.1
  flags    : Request A records, Request AAAA records
  reach    : Reachable, Local Address, Directly Reachable Address

Reverse Proxy

We use Caddy server as a reverse proxy.

Caddy is distributed as a single binary file and has a simple configuration similar to nginx's.

DNS

Dnsmasq is a lightweight DNS forwarder and DHCP server. We use dnsmasq for DNS resolution.

Ngrok

Ngrok is used to share local URLs.

Credits

This is a rework of marina-cli with small modifications to suit a different setup.

License

® License MIT by goliatone