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

spikeme

v0.5.4

Published

Analyze your repo's stack and generate a time-boxed spike doc to decide your next library, with evidence. Reads package.json (npm) and pyproject.toml/requirements.txt (Python).

Readme

spikeme

Decide your next library with evidence, straight from your repo. spikeme reads your project manifest, maps your stack, and points at the decisions worth a time-boxed spike. Then it generates a full spike document (options, comparison, recommendation, PoC plan) grounded in live registry facts.

Supports npm (package.json) and Python (pyproject.toml, requirements.txt). More ecosystems are pulled in by demand.

Install

# one-off, no install
npx spikeme

# or install globally
npm install -g spikeme
spikeme --help

Quick start

# Analyze the current repo's stack — free, runs locally, nothing uploaded
spikeme

# Generate a full spike doc for a decision (needs a free SpikeMe account)
spikeme login                       # opens your browser to sign in
spikeme gen "state management library"

Commands

| Command | What it does | | --- | --- | | spikeme | Analyze the repo: stack, categories, and gaps that make good spike topics. Local and open. | | spikeme gen "<topic>" | Generate a full spike document for a decision. Runs through the SpikeMe backend (plan quota applies). | | spikeme login | Save your SpikeMe access token to ~/.spikeme/token. |

gen options

| Flag | Default | | | --- | --- | --- | | --depth quick\|full | full | Document depth | | --options 2\|3\|4 | 3 | How many options to compare | | --lang en\|pt | en | Document language | | -o, --out <file> | stdout | Write the doc to a file | | --path <dir> | current dir | Repo directory to analyze |

MCP server

SpikeMe also ships an MCP server — spikeme-mcp — exposing analyze_stack and generate_spike to coding agents (Claude Code, Cursor). Add it with (no global install needed):

claude mcp add spikeme -- npx -y spikeme-mcp

See the MCP docs for Cursor and other clients.

How it works

The analysis is local and open: parsing your manifest, categorizing dependencies, and spotting gaps all happen on your machine, with no upload. Only generation calls the SpikeMe backend, which runs the same evidence engine as spikeme.io: it collects live facts (versions, weekly downloads, licenses) from the npm registry or PyPI and grounds the document in real, dated numbers.

Auth

gen runs through the SpikeMe backend and needs an active plan (spikeme.io/precos) plus a signed-in CLI. Analysis (spikeme) is always free and needs no account.

spikeme login uses a device flow: it shows a one-time code, opens your browser, and you enter that code to approve. The token is stored in ~/.spikeme/credentials.json (mode 0600) and refreshes automatically. Only enter a code from a spikeme login you started yourself.

For CI or headless machines, pass a token directly:

spikeme login --token "<access-token>"   # non-interactive
# or
SPIKEME_TOKEN="<access-token>" spikeme gen "..."

License

MIT