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

@oodarun/cli

v0.1.27

Published

Launch Claude Code on cloud dev environments

Readme

@oodarun/cli

Design on your codebase in the cloud, no local setup required.

ooda.run

Ooda launches Claude Code on cloud sandboxes. Each project runs in its own isolated cloud environment with a public URL — no local dependencies, no Docker, no setup headaches.

Quick start

Install it globally (recommended) and run ooda:

npm install -g @oodarun/cli
ooda

The CLI nudges you when a newer version is published, so a global install won't go stale. You can also run it without installing via npx @oodarun/cli@latest.

On first run you'll be prompted to sign in with your email. If your org is already set up, you'll be connected to it automatically. Otherwise an org admin can invite you.

Your credentials are saved to ~/.ooda/auth.json so you only need to do this once.

What it does

When you connect to a project, ooda automatically asks Claude to analyse your codebase, install dependencies, and start the dev server — no manual prompting needed. You're dropped into a full Claude Code session with syntax highlighting, tool use, and everything you'd get locally.

  Your projects:
    [1] new-nav             ● running
    [2] marketing-redesign  ○ stopped
    [3] shader-tool         ○ stopped

  [d] Deploy current directory
  [n] New project (opens dashboard)
  [q] Quit

  Select: _
  • Pick a project — connects and launches Claude Code with full TTY pass-through
  • Deploy current directory — uploads your local project to a new sandbox and starts Claude on it
  • New project — opens the local web dashboard to create from a template

When you exit Claude (Ctrl+C), you're returned to the selector.

Dashboard

Ooda includes a local web dashboard at http://localhost:4444 for managing your projects visually. Browse existing projects, create new ones from templates, or deploy a local folder — all from your browser.

Parallel sessions

Work on multiple projects simultaneously by opening additional terminals:

# Terminal 1 — main menu + first project
ooda

# Terminal 2 — connect directly to another project
ooda connect marketing-redesign

# Terminal 3 — and another
ooda connect shader-tool

ooda connect <name> skips the dashboard and connects straight to the named project. It uses prefix matching, so ooda connect market will match marketing-redesign-m3np.

Multi-language support

Each sandbox is a full Linux environment with root access. While ooda includes optimised support for JavaScript frameworks (Astro, Next.js, Vite), Claude can work with any language or framework — Ruby/Rails, Python/Django, PHP/Laravel, Go, Rust, and more. Claude analyses your codebase and figures out the right setup automatically.

Publishing

Publish a built static site to a permanent shareable URL at {slug}-p.ooda.run.

From the CLI — fully non-interactive, so agents and CI can drive it:

ooda publish                                           # run in the project root (auto-detects the build dir)
ooda publish --slug my-app                             # choose the slug
ooda publish --title "My App" --description "A demo blog" --tags blog,astro   # set display metadata
ooda publish -m "added dark mode"                      # note what changed (recorded per version)
ooda sites list                                        # list published sites
ooda sites access my-app --mode password --password s3cret   # gate access
ooda sites delete my-app                               # unpublish

Run publish from your project root — it auto-detects the build output (dist, build, out, .output/public, or .next/static) inside it. Don't pass the build folder itself (ooda publish ./dist is wrong). Build first. Add --json to any command for machine-readable output, and set OODA_ACCESS_TOKEN + OODA_ORG_ID to run without an interactive login.

Or just ask Claude inside a session:

You: publish this
Claude: Building... uploading... done!
        Published: https://my-app-p.ooda.run
  • Published sites are static (HTML, CSS, JS) served from Cloudflare's edge
  • Control access per-site: public, password-protected, or org-login required
  • Every publish creates a new version

Why not just use localhost?

  • Consistent environments — every sandbox is identical, no "works on my machine" issues
  • Safe by default — Claude runs with full permissions in a sandbox, no risk to your local filesystem
  • Publish for free — get a permanent URL at {slug}-p.ooda.run, from a Claude session or ooda publish
  • Collaboration — every project gets a public URL, visible to all org members in the dashboard
  • Run anything, anywhere — full cloud sandbox from a laptop, tablet, or phone

Commands

ooda                                      # Interactive menu + dashboard
ooda login | whoami | logout              # Email-code sign-in, session check, sign out
ooda connect <name>                       # Direct connect (for parallel sessions)
ooda list                                 # List your projects
ooda deploy [path|github-url]             # Deploy a folder or GitHub repo
ooda publish [--slug <slug>]              # Publish a built static site (run in the project root)
ooda sites [list|access|password|delete]  # Manage published sites
ooda secrets [set|list|rm|attach|detach]  # Env vars & secrets for projects/sites
ooda --help                               # Full command + flag reference
ooda --port 3000                          # Custom dashboard port (default: 4444)

Env vars & secrets

Give projects and published sites configuration without hardcoding it. A value is either a non-secret env var (--env) or a true secret (default).

ooda secrets set API_URL=https://api.example.com --env --sites my-app   # public config → window.__OODA_ENV__.API_URL
ooda secrets set STRIPE_KEY=sk_live_... --project my-app                # secret injected into the project VM
ooda secrets list --site my-app                                        # masked — keys only, never values
  • Non-secret --env values are delivered to a published site's page as window.__OODA_ENV__.KEY. True secrets are never exposed to the browser.
  • The CLI never prints a value back (no reveal command); an admin reveals in the dashboard. Project preview URLs ({slug}.ooda.run) are sign-in only.

Auth options

| Method | Details | |--------|---------| | Interactive prompt | Sign in with email on first run (saved to ~/.ooda/auth.json) | | Environment variables | OODA_ACCESS_TOKEN and OODA_ORG_ID | | Claude Code OAuth | If you have Claude Code installed on macOS, the OAuth token is read from your keychain automatically |

Requirements

  • Node.js 20+
  • An ooda account — org admins invite members, or sign up at ooda.run
  • An Anthropic API key or a paid Claude subscription with OAuth

More info