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 🙏

© 2026 – Pkg Stats / Ryan Hefner

zer0friction-cli

v0.1.1

Published

A polished terminal cockpit for Zer0Friction monitoring, projects, API keys, and deploy reporting.

Readme

zer0friction-cli

zer0friction-cli is the command-line interface for Zer0Friction. It gives you a faster way to connect a workspace, inspect project health, manage monitors, create API keys, and report deploy events without opening the dashboard.

It is built for operators and developers who want:

  • A guided setup flow for first-time onboarding
  • Colorful, high-signal terminal output
  • Interactive monitor and project creation
  • Scriptable JSON output when automation matters
  • A lightweight deploy reporting workflow from CI or local terminals

Install

From npm

npm install -g zer0friction-cli

Verify the install

zf help
zf doctor

Requirements

  • Node.js 22+
  • A reachable Zer0Friction backend
  • A Zer0Friction API key for authenticated commands

Quick Start

Run the guided setup:

zf init

This flow helps you:

  • Set the backend URL
  • Save your API key locally
  • Select a default project
  • Optionally create your first monitor

Once configured, run a quick diagnostic:

zf doctor

Common Commands

Health and setup

zf init
zf doctor
zf status
zf auth whoami

Project management

zf projects list
zf projects create --interactive
zf projects use --slug production
zf projects current

Monitor operations

zf monitors list
zf monitors get --id <monitor-id>
zf monitors checks --id <monitor-id> --limit 20
zf monitors create --interactive
zf monitors update --id <monitor-id> --name "Checkout API"
zf monitors pause --id <monitor-id>
zf monitors resume --id <monitor-id>
zf monitors delete --id <monitor-id>

API keys

zf api-keys list
zf api-keys create --name "GitHub Actions"
zf api-keys revoke --id <key-id>

Deploy reporting

zf deploy report --environment production --service api

This is useful for correlating incidents with deploy activity directly from CI/CD pipelines.

Configuration

The CLI stores config in:

~/.zer0friction/config.json

Supported saved values:

  • baseUrl
  • apiKey
  • projectId
  • projectName

You can also override config with environment variables:

export ZF_BASE_URL="https://your-api.example.com"
export ZF_API_KEY="zf_xxx"
export ZF_PROJECT_ID="project_123"

Config commands:

zf config show
zf config get base-url
zf config set base-url https://your-api.example.com
zf config clear project-id

JSON Output

Several commands support --json so the CLI can plug into scripts and automation:

zf doctor --json
zf status --json
zf auth whoami --json
zf projects list --json
zf monitors list --json

Use the human-readable UI for everyday work and --json when you want machine-readable output.

Interactive Workflows

The CLI includes interactive flows for:

  • zf init
  • zf projects create --interactive
  • zf monitors create --interactive

These flows are designed to be safe, guided, and fast. If you are in a non-interactive environment, pass explicit flags instead.

Shell Completion

Generate completion scripts for supported shells:

zf completion bash
zf completion zsh
zf completion fish
zf completion powershell

Examples:

zf completion bash >> ~/.bashrc
zf completion zsh >> ~/.zshrc
zf completion fish > ~/.config/fish/completions/zf.fish
zf completion powershell | Out-String | Add-Content $PROFILE

CI/CD Example

You can report a deployment after shipping:

zf deploy report \
  --project-slug production \
  --environment production \
  --service api \
  --provider GITHUB \
  --type DEPLOY \
  --version 2026.03.28 \
  --commit-sha "$GITHUB_SHA"

Troubleshooting

If zf doctor fails:

  • Confirm your backend URL is correct
  • Confirm your API key is valid
  • Confirm the backend is reachable from your terminal
  • Confirm your default project still exists

If interactive commands fail:

  • Make sure you are running in a real TTY shell
  • Use explicit flags in CI or non-interactive sessions

Local Development

Inside the Zer0Friction repository:

npm run cli:build
npm run cli:link
zf help

You can also package the CLI locally:

npm run cli:pack

Positioning

The goal of zer0friction-cli is simple: make Zer0Friction feel fast, operational, and terminal-native. The dashboard remains great for broad visibility, while the CLI is built for quick decisions, deploy workflows, and hands-on incident response.