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

@cacherapp/cli

v1.1.1

Published

The command line interface to Cacher.

Downloads

26

Readme

Cacher CLI

Cacher CLI - The command line interface to Cacher, the code snippet organizer for pro developers.

Cacher logo

Version Downloads/week License

The Cacher CLI allows power users to perform common actions on their Cacher libraries.

The CLI is constantly evolving. Check back often for updates and new commands.

Demo

CLI demo

Getting Started

Prerequisites

Instructions

To view your Cacher API credentials, visit: https://app.cacher.io/enter?action=view_api_creds

Note the API key and token in the dialog:

From a terminal window, run:

npm install -g @cacherapp/cli
cacher setup
? API key: ****************
? API token: ********************************

If all goes well, your credentials will be saved and you can execute CLI commands.

Commands

setup

Configure API credentials for Cacher CLI. To view your API token and key visit: https://app.cacher.test/enter?action=view_api_creds

USAGE
  $ cacher setup

OPTIONS
  -k, --key=key      api key for Cacher account
  -t, --token=token  token for Cacher account

EXAMPLES
  cacher setup
  ? API key: ****************
  ? API token: ********************************

  cacher setup --key=fe33cd82ae161ba1 --token=0134a0be884468829669c3be02c3a814

See code: lib/commands/setup/index.ts

snippets:add

Add a new snippet to your Cacher personal/team library. By default, creates snippet using clipboard contents. Append filename argument to use file contents instead.

USAGE
  $ cacher snippets:add [FILENAME]

OPTIONS
  -d, --description=description  snippet description
  -f, --filename=filename        filename for content (will override name of file passed in)
  -m, --team=team                screenname of team library that snippet will be created in
  -q, --quiet                    minimal feedback
  -t, --title=title              snippet title
  -u, --public                   save as public snippet

EXAMPLES
  $ cacher snippets:add
  ? Snippet title: Example from System Clipboard
  ? Description: Snippet created from contents in the clipboard.
  ? Filename: my_file_from_clipboard.md

  $ cacher snippets:add ~/MyCode/example.rb
  ? Snippet title: Example for CLI
  ? Description: This is an example for the Cacher CLI.

  $ cacher snippets:add --filename=my_file_from_clipboard.md \
      --title="Public example from System Clipboard" \
      --description="Snippet created from contents in the clipboard" \
      --team=cacher-dev-ops --public --quiet

See code: lib/commands/snippets/add.ts

run-server:start

Start a Run Server to accept requests from a given origin. The Run Server is used to run shell commands using Cacher snippet file contents. Run this command in tandom with the Cacher's standalone Run Server option.

For more information about the Run Server and its configuration, check out @cacherapp/cacher-run-server.

USAGE
  $ cacher run-server:start

OPTIONS
  -l, --logToFile      log output to server log file (~/.cacher/logs/run-server.log)
  -o, --origin=origin  http(s) origin for CORS requests (use "file://" with Cacher Desktop, "https://app.cacher.io" with Web App)
  -p, --port=port      port to run server on
  -t, --token=token    server token to check against while making connections
  -v, --verbose        show verbose logging

EXAMPLE
  $ cacher run-server:start -o https://myapp.dev -p 30012 -t my_server_token

    Listening on: http://localhost:30012
    Server token: my_server_token

Examples:

# With origin "https://app.cacher.io", generate port and token
cacher run-server:start

# With origin "file://" for Cacher Desktop Client, specify port and token
cacher run-server:start -o file:// -p 12345 -t secret

# Verbose output, logged to "~/.cacher/logs/run-server.log"
cacher run-server:start -v -l

Starting the server on a remote machine

Running a remote server ensures all your developers are able to run snippet file commands against the same environment.

Note: Since the commands will be run using the shell account from which you launch the CLI, we recommend you use only machines which are for testing or are ephemeral (i.e. Docker instances).

Example of launching with a secure tunnel (ngrok).

cacher run-server:start -p 39135 -t 4D5dzRGliafhGg~btNlR9 -o file:// -v
ngrok http 39135

You can then connect to the server via Cacher's Standalone option:

Connect to Standalone Run Server

run-server:configure

Open the user configuration for the Run Server. Add rules here to handle additional file extensions.

USAGE
  $ cacher run-server:configure

OPTIONS
  -e, --editor=editor  open configuration file with editor (i.e. "code" for Visual Studio Code)

EXAMPLES
  $ cacher run-server:configure
  $ cacher run-server:configure -e code

View documentation on the user configuration rule format.

run-server:log

Show the server log file.

USAGE
  $ cacher run-server:log

OPTIONS
  -n, --lines=lines  show the last n lines of the log
  -t, --tail         follow the Run Server log

EXAMPLE
  $ cacher run-server:log
  $ cacher run-server:log -t
  $ cacher run-server:log -n 100

Command Help

cacher help                 # View description and command topics
cacher help snippets        # Help on snippets commands
cacher help snippets:add    # Help and usage for the snippets:add command

Libraries Used

  • oclif - Heroku's open CLI framework.
  • chalk - Terminal styling for Node.
  • clipboardy - Cross-platform clipboard support.

Author / License

Released under the MIT License by Cacher.