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

@moniiapp/cli

v0.1.0

Published

MONII command-line interface — auto-detect Vercel + Netlify tokens, pair your phone via QR, run status + kill switch from the terminal

Readme

@moniiapp/cli

The MONII command-line interface. Detects existing Vercel/Netlify logins on your laptop, generates a QR your phone can scan to pair, and exposes operational commands (status, kill, whoami) for working from a terminal.

The CLI never sends your tokens anywhere — they stay in ~/.monii/auth.json (0600 perms) on your laptop, and the QR contains a monii:// deep link that only the MONII app can interpret.

Install

npm install -g @moniiapp/cli

Verify:

monii --help

Without a global install

If you don't want to install globally, npx works too:

npx @moniiapp/cli login
npx @moniiapp/cli status

From source (contributors)

git clone https://github.com/randomershenans/MONII.git
cd MONII
npm install
npm --workspace @moniiapp/shared run build
npm --workspace @moniiapp/cli run build
npm --workspace @moniiapp/cli link        # `monii` is now on your PATH

To unlink later: npm --workspace @moniiapp/cli unlink.

Commands

monii login

Walks you through connecting Vercel + Netlify. For each platform:

  1. Auto-detect any existing CLI login on this machine
  2. Offer to install the provider CLI if missing (npm i -g vercel or npm i -g netlify-cli)
  3. Spawn the provider's own browser auth if you accept
  4. Render a per-platform QR scoped to that token (e.g. monii://auth?n=…)
  5. Wait for you to scan with the MONII app on your phone

The QR encodes a monii:// deep link with the access token. Your phone catches the link, saves the token to its Keychain, and you're connected.

Flags:

| Flag | Effect | |---|---| | --manual | Skip auto-detect + CLI launching; only prompt for a manually-pasted PAT | | --no-qr | Save tokens to ~/.monii/auth.json without rendering a QR (useful when only the MCP needs to read them) | | --skip-vercel | Don't ask about Vercel | | --skip-netlify | Don't ask about Netlify |

monii whoami

Shows which tokens MONII has on this machine + where they came from.

  MONII · whoami
  ──────────────

  auth file  ~/.monii/auth.json
  saved at   2026-05-20T18:47:30.119Z
  ●  Vercel  token ver•••• ••••aBcD
  ●  Netlify token nfp_•••• ••••xYz9

  Detected on disk:
    Vercel:  found at ~/Library/Application Support/com.vercel.cli/auth.json
    Netlify: found at ~/.netlify/config.json

monii status [-l N]

Combined deployment table across both providers. Default 10 per provider.

┌──────────┬─────────────────┬───────────┬────────┬─────┬──────────────────────────────┐
│ provider │ project         │ state     │ branch │ age │ url                          │
├──────────┼─────────────────┼───────────┼────────┼─────┼──────────────────────────────┤
│ vercel   │ aurora-api      │ ● building│ main   │ 2m  │ aurora-api-h74.vercel.app    │
│ netlify  │ mosaic-blog     │ ● live    │ main   │ 1h  │ mosaic-blog.netlify.app      │
│ vercel   │ studio-3d       │ ● failed  │ staging│ 6m  │ studio-3d-g4q.vercel.app     │
└──────────┴─────────────────┴───────────┴────────┴─────┴──────────────────────────────┘

monii kill <project> --provider <vercel|netlify>

Take a deployed project offline. Confirms first unless you pass -y.

monii kill aurora-api --provider vercel
# DANGER: This will take "aurora-api" OFFLINE on vercel.
#   Live traffic stops immediately. Reversible from the provider dashboard.
# ? Kill aurora-api? (Y/n)

Token file format

~/.monii/auth.json looks like:

{
  "vercel":  { "token": "Bearer-style-token", "teamId": "optional" },
  "netlify": { "token": "long-string" },
  "generatedAt": 1779281365307
}

This file is also read by the @moniiapp/mcp server so AI agents can use the same credentials. Don't commit it — both .gitignore and the saved file's 0600 permissions protect you, but watch what you cat.

Local dev (for contributors)

npm --workspace @moniiapp/cli run dev   # tsc --watch

Then in another terminal:

node packages/cli/dist/index.js login

Architecture

The CLI is intentionally tiny:

packages/cli/src/
├── index.ts                 commander setup + program entry
├── auth/
│   ├── extract.ts           reads ~/.local/share/vercel/auth.json etc.
│   ├── store.ts             writes ~/.monii/auth.json (mode 0600)
│   ├── spawn.ts             cross-platform child_process helpers
│   └── spinner.ts           inline braille spinner (no extra dep)
├── api/
│   ├── vercel.ts            /v6/deployments + /v1/projects/.../pause
│   └── netlify.ts           /sites + /sites/:id (password lock)
└── commands/
    ├── login.ts             the walkthrough — auto-detect + CLI launch + QR
    ├── status.ts            combined deploy table via cli-table3
    ├── kill.ts              pause project / lock site
    └── whoami.ts            inspect ~/.monii/auth.json + detected creds

No backend involved at any step. The CLI talks directly to Vercel/Netlify APIs.

License

MIT. See LICENSE.

Links