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

sublyzer-snapshot

v0.5.4

Published

Open-source CLI - local project health scanner for Node.js (optional Sublyzer cloud sync)

Readme

Sublyzer Snapshot

Local project health scanner for any Node.js codebase.

Works standalone — no account required. Optionally sync to Sublyzer cloud when you want a live dashboard.

npm version License: MIT Node.js

Quick Start · Standalone vs Cloud · Monorepos · Commands · Roadmap

  $ npx sublyzer-snapshot scan

  Scan root:     frontend (auto-selected)
  Stack:         Next.js (high)
  Health:        [████████░░] 84/100  grade B
  Routes:        42
  Build output:  12.4 MB (.next)
  ✓ Saved to .sublyzer/ (local)

✨ Introduction

Sublyzer Snapshot is an open-source CLI that scans your repo and answers:

How healthy is this project right now?

It runs entirely on your machine: stack detection, routes, dependency audit, outdated packages, build size, git metadata, and a 0–100 health score.

Sublyzer cloud is optional — use it when you want events in a shared dashboard, agents (Hermes), or team visibility. Without cloud, you still get reports, history, CI gates, and compare diffs.


🔀 Standalone vs Cloud

| | Standalone (default) | Cloud (optional) | |---|--------------------------|----------------------| | Account | None | Sublyzer integration code | | Command | npx sublyzer-snapshot scan | init --code … then run --push | | Output | Terminal + .sublyzer/ history | + Sublyzer dashboard | | CI | scan --fail-on high | + optional push via secret |

# Standalone — zero setup
npx sublyzer-snapshot scan

# Optional cloud link
npx sublyzer-snapshot init --code YOUR_24_CHAR_CODE -y
npx sublyzer-snapshot run --push

🚀 Quick start

Install (use npx — recommended)

npx sublyzer-snapshot@latest --version

Do not run npm i sublyzer-snapshot in random folders — use npx to avoid unrelated peer dependency conflicts.

Scan any project

cd your-project
npx sublyzer-snapshot scan
npx sublyzer-snapshot report --html
npx sublyzer-snapshot report --badge
npx sublyzer-snapshot report --out HEALTH.md

Save preferences (local)

npx sublyzer-snapshot init --local
npx sublyzer-snapshot run

Optional cloud sync

npx sublyzer-snapshot init --code YOUR_24_CHAR_CODE -y
npx sublyzer-snapshot run --push
npx sublyzer-snapshot open

📦 Monorepos

Snapshot auto-picks the best package in monorepos (npm/pnpm workspaces, frontend/, backend/, etc.).

# From repo root — auto-selects e.g. frontend/
npx sublyzer-snapshot scan

# Force a subfolder
npx sublyzer-snapshot scan --path backend
npx sublyzer-snapshot init --local --path frontend

On init, other scannable packages in the repo are listed as hints.


🧰 Commands

| Command | Description | |---------|-------------| | scan | Local scan — no init, no account | | init | Save config — --local or --code for cloud | | run | Scan + history (pushes in cloud mode or with --push) | | report | Markdown, --html, --badge | | dashboard | Gera e abre HTML no browser | | compare | Diff vs previous scan | | doctor | Verify Node, scan target, optional cloud | | status | Config + last scan | | ci | GitHub Actions template | | pull / open | Cloud only (read API / dashboard) |

Flags

npx sublyzer-snapshot scan --path frontend
npx sublyzer-snapshot scan --fail-on high --json
npx sublyzer-snapshot scan --skip-deep          # fast scan, skip code analysis
npx sublyzer-snapshot report --html --out report.html
npx sublyzer-snapshot report --badge
npx sublyzer-snapshot run --local              # never push
npx sublyzer-snapshot run --push               # force cloud push
npx sublyzer-snapshot run --skip-audit         # faster

🧠 Deep analysis (v0.5)

Every scan includes (unless --skip-deep):

  • Intelligent health score — CVEs, trends, code issues, Next.js patterns
  • Health trends — history chart in HTML report
  • Code smells — long files, deep nesting, any, empty catch, console.log
  • Cyclomatic complexity — top hotspots
  • Duplicate blocks — repeated code detection
  • Next.js anti-patterns — client ratio, missing use client, fetch in client
  • Unused dependencies — import scan
  • Bundle treemap — breakdown of .next/ / dist/
  • Benchmarks — percentile vs similar apps (anonymous heuristics)
  • Multi-stack — also detects Python (pyproject.toml) and Go (go.mod)

Custom rules

Add .sublyzer/rules.json or .sublyzer/rules.js:

{
  "rules": [
    {
      "id": "no-eval",
      "message": "Avoid eval()",
      "severity": "high",
      "match": "\\beval\\s*\\("
    }
  ]
}

See examples/rules.json.

Beautiful reports

# Offline HTML dashboard (charts, treemap, issues)
npx sublyzer-snapshot report --html

# SVG badge + README snippet
npx sublyzer-snapshot report --badge

📊 What gets scanned

  • Stack — Next.js, NestJS, Express, Fastify, Remix, Nuxt, SvelteKit, React, Vue
  • Routesapp/ / pages/ or source patterns
  • Vulnerabilitiessublyzer-runtime offline engine (npm/pnpm/yarn audit + source patterns)
  • Build sizedist/, .next/, build/ folders
  • Git — branch, commit, dirty state
  • Health score — 0–100, grade A–F

🔄 CI/CD

Local-only CI (no secrets):

- run: npx sublyzer-snapshot@latest scan --fail-on high --json

Generate full workflow:

npx sublyzer-snapshot ci --out .github/workflows/sublyzer-snapshot.yml

Optional cloud push when SUBLYZER_INTEGRATION_CODE secret is set.


🔐 Environment variables

| Variable | When | |----------|------| | SUBLYZER_INTEGRATION_CODE | Cloud init | | SUBLYZER_READ_KEY | Cloud pull | | SUBLYZER_API_URL | Custom API (default: https://api.sublyzer.com) |


📁 Local data

your-project/
└── .sublyzer/           # gitignored on init
    ├── snapshot.json    # config (local or cloud)
    ├── last-snapshot.json
    └── history/         # for compare

🛣️ Roadmap

  • [x] npm publish — sublyzer-snapshot
  • [x] Standalone scan (no account)
  • [x] Local vs cloud modes
  • [x] Monorepo auto-target (frontend/, workspaces)
  • [x] Build output size scan
  • [x] Health score + trends + benchmarks
  • [x] Deep analysis (complexity, smells, Next.js patterns)
  • [x] HTML dashboard + README badge
  • [x] Custom rules (.sublyzer/rules.json)
  • [x] Python / Go detection (secondary stacks)
  • [ ] login OAuth (no manual code paste)
  • [ ] SARIF export for GitHub Security
  • [ ] PR comment bot
  • [ ] Real anonymous benchmark API (aggregated cloud data)

📄 License

MIT — see LICENSE.


npm · Sublyzer Cloud · Docs

Standalone by default · Cloud when you need it