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

@gomani/bench

v0.11.0

Published

The proof-of-thesis benchmark harness: measured shipped-weight + runtime metrics across Gomani and baselines.

Downloads

157

Readme

@gomani/bench

The proof-of-thesis harness: it measures the framework against its own claims with real numbers, and never fabricates — unmeasured metrics are labelled, not invented.

gomani bench                 # measure the targets in gomani.bench.json → a Markdown report
gomani bench --out RESULTS.md
gomani bench --runtime       # also run the browser probe (needs Playwright + a browser)

What it measures

  • Shipped weight (always, no browser). For each built dist, the eager JS — the transitive closure of JavaScript reachable by static imports from the page's entry scripts (dynamic import() — Gomani's islands, or any code-split chunk — is counted as lazy, not eager) — plus HTML and CSS, all as Brotli-compressed wire bytes. Framework-agnostic: it reads the dist of any tool, so Gomani and the bench-baselines/* (React SPA, etc.) are measured identically. This carries H1 (client cost).
  • Offline shell / PWA (H4). Whether an app-shell service worker + PWA manifest are present.
  • .goma vs JSX parity. A target may declare "compareTo": "<jsx-twin>"; the report then asserts that target's eager JS ≤ the twin's and prints a .goma-vs-JSX table. Since both surfaces lower to the same runtime, a .goma port must ship no more client JS than the hand-written JSX of the same app — this measures it (starter-gomani ships a 0 B delta vs starter).
  • Runtime (optional, Playwright). DOM-interactive, LCP, JS heap, and actual transfer under throttled MBD/MBN profiles. Gated: absent a browser, these columns are , and the static headline stands.

The report

A Markdown table of shipped weight per target, plus the H1–H9 hypothesis table — with H1 and H4 filled straight from the measurement and the rest labelled by how they are covered (a component's tests, a process claim, or on-device). See bench-results.md for a committed run.

Sample headline: for the same content, Gomani's griot ships 3.3 KB of eager JS; a React SPA ships 39.3 KB (Brotli).

Programmatic API: measureDist, runBench, formatBenchReport, measureRuntime, HYPOTHESES, PROFILES.