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

@grainulation/grainulation

v1.0.1

Published

Structured research for decisions that satisfice

Readme

Most decisions fail not because the team lacked data, but because they lacked a process for turning data into evidence and evidence into conviction. Grainulation is that process.

You start with a question. You grow evidence: claims with types, confidence levels, and evidence tiers. You challenge what you find. You look for blind spots. And only when the evidence compiles -- when conflicts are resolved and gaps are acknowledged -- do you write the brief.

Install

npm install -g @grainulation/grainulation

Or start a research sprint directly:

npx @grainulation/wheat init

Quick start

grainulation              # Ecosystem overview
grainulation doctor       # Health check: which tools, which versions
grainulation setup        # Install the right tools for your role
grainulation wheat init   # Delegate to any tool
grainulation farmer start

The ecosystem

Eight tools. Each does one thing. Use what you need.

| Tool | What it does | Install | | ------------------------------------------------------------ | ----------------------------------------------------------------------------- | ------------------------------------- | | wheat | Research engine. Grow structured evidence. | npx @grainulation/wheat init | | farmer | Permission dashboard. Approve AI actions in real time (admin + viewer roles). | npm i -g @grainulation/farmer | | barn | Shared tools. Templates, validators, sprint detection. | npm i -g @grainulation/barn | | mill | Format conversion. Export to PDF, CSV, slides, 24 formats. | npm i -g @grainulation/mill | | silo | Knowledge storage. Reusable claim libraries and packs. | npm i -g @grainulation/silo | | harvest | Analytics. Cross-sprint patterns and prediction scoring. | npm i -g @grainulation/harvest | | orchard | Orchestration. Multi-sprint coordination and dependencies. | npm i -g @grainulation/orchard | | grainulation | Unified CLI. Single entry point to the ecosystem. | npm i -g @grainulation/grainulation |

You don't need all eight. Start with wheat. That's it. One command. Everything else is optional -- add tools when you feel the friction.

The journey

Question --> Seed Claims --> Grow Evidence --> Compile Brief
  /init       /research       /challenge        /brief
                              /blind-spot
                              /witness

Every step is tracked. Every claim has provenance. Every decision is reproducible.

Philosophy

Satisficing over maximizing. You will never have perfect information. The goal is enough evidence to make a defensible decision, not a perfect one.

Claims over opinions. Every finding is a typed claim with an evidence tier. "I think" becomes "r003: factual, tested -- measured 340ms p95 latency under load."

Adversarial pressure over consensus. The /challenge command exists because comfortable agreement is the enemy of good decisions.

Process over heroics. A reproducible sprint that anyone can pick up beats a brilliant analysis that lives in one person's head.

Zero dependencies

Every grainulation tool runs on Node built-ins only. No npm install waterfall. No left-pad. No supply chain anxiety.

The name

You build the crop (wheat), the steward (farmer), the barn, the mill, the silo, the harvest, the orchard -- and only then do you name the machine that connects them all.

Grainulation: the machine that processes the grain.

License

MIT