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

previewhost

v0.3.0

Published

Run apps and services in local preview environments with stable URLs.

Readme

When you replace a preview, its local URL stays the same. New requests switch only after the replacement services pass readiness checks. Stop ends owned processes and retains managed database data.

Previewhost dashboard showing a frontend, API, PostgreSQL, Redis, and completed migration and seed jobs

Get started

Previewhost requires Node.js 22.23 or later. macOS and Linux support x64 and arm64. Windows requires x64. Native commands and automatic project owners run on macOS, Linux, and Windows. See the platform and database requirements. Linux requires procps (/bin/ps) and lsof (/usr/bin/lsof). Automatic unlock requires macOS 13 or later.

For an existing installation, read the reset instructions before updating.

Choose the interface you need:

| Interface | Guide | | --- | --- | | Coding agent | MCP setup: register a client and ask it to preview your application. | | Terminal | First preview with the CLI: run a frontend and backend, replace them, and stop them. | | Node.js program | Node.js library: start a runtime, request a page, and close it. |

Each guide includes its installation steps. The introduction explains how previews, environments, and project owners work.

Default lookup uses root preview.yaml, then preview.yml. If both exist, select one with --file or keep one default. New configurations save as preview.yaml only when neither file exists.

For a project with a configuration file and the global CLI installed:

previewhost inspect
previewhost start --allow-exec
previewhost dashboard

--allow-exec permits trusted commands and managed database operations with your user permissions, without a sandbox. The dashboard opens in your browser and needs its terminal to remain open. Closing it does not stop previews.

Documentation

| Task | Guide | | --- | --- | | Install or update Previewhost | Installation | | Run a complete example | First preview with the CLI | | Connect a coding agent | MCP setup | | Describe your application | Write preview.yaml | | Run services, migrations, and seeds | Services and jobs | | Connect or manage local data | Databases | | Supply private credentials | Secrets | | Preview existing task checkouts | Worktrees | | Inspect previews in the browser | Dashboard | | Diagnose errors | Troubleshooting | | Embed the runtime | Node.js library | | Look up fields and commands | API and CLI reference | | Check supported clients and frameworks | Integrations | | Understand permissions and recovery | Security |

The optional agent skill ships in the npm package under dist/skills/previewhost. Install it through your client's skill mechanism. MCP registration and skill installation are separate operations.

Reset required for earlier installations

This release uses ~/.local/share/previewhost for runtime storage and Previewhost names for managed Docker resources. It does not discover or migrate earlier runtime namespaces, Keychain secrets, or retained-data records. Existing files and resources are left intact.

  1. Before updating, stop earlier Previewhost owners with the installed version.
  2. If no encrypted keystore exists, run previewhost secrets init. Enter required secrets through private input.
  3. For new managed databases, choose a fresh --data-dir.
  4. Keep old data directories, Docker volumes, and Keychain items until you decide how to retain them.

For valuable old database data, use the earlier release to access and export it first. Use that release for any explicit cleanup of old data. Removing a record or generating a new password does not recover its database. See keystore recovery for backups and lost passwords.

Development

See CONTRIBUTING.md for source builds and verification. The documentation website renders the same Markdown guides with search, page outlines, and light and dark themes. Run npm run dev:docs after installing repository dependencies. Website code and build output are excluded from the npm package. The bundled agent skill includes its referenced guides and product screenshots.

See NOTICE for attribution and LICENSE for the MIT license.