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

quality-intelligence-platform

v0.1.1

Published

An AI platform that crawls web apps, understands and remembers them (the Zeta Core), and generates accurate test cases, test data, and test scripts.

Readme

🧠 Quality Intelligence Platform

An AI platform that crawls a web app, understands and remembers it (the App Brain), and generates accurate test cases, test data, and test scripts — with enterprise connectors and strict tenant isolation.

This repository is the Phase 1 foundation. It's organized so an AI coding agent (or a developer) can continue building phase by phase using your prompt packs.


🧩 What's here

quality-intelligence-platform/
├── README.md                  ← you are here
├── package.json               ← monorepo (npm workspaces)
├── docker-compose.yml         ← local Postgres
├── .env.example               ← copy to .env and fill in
├── docs/
│   ├── CONSTITUTION.md         ← the rules every agent must follow
│   └── ARCHITECTURE.md         ← how the pieces fit (plain English)
├── scripts/setup.sh           ← one-command local setup
└── packages/
    ├── core/                  ← shared types, config, tenant context
    ├── database/              ← data model + Zeta Core + tenant isolation (RLS)
    ├── app-brain/             ← knowledge store + GROUNDING (direct load)
    ├── crawler/               ← crawl + LOGIN + screen reader + screenshots
    ├── agents/                ← AI generation agents (test cases)
    ├── connectors/            ← GitHub + JIRA (read-only)
    ├── api/                   ← the backend (Fastify)
    └── web/                   ← the frontend (to build)

🛠️ The stack (and why)

  • TypeScript everywhere — one language across crawler, backend, and (later) UI.
  • PostgreSQL + Prisma — reliable database; Postgres Row-Level Security enforces tenant isolation at the lowest layer (the "sacred" rule).
  • Playwright — the standard browser-automation "robot hands" for crawling. (Add Stagehand or Browser Use for smarter AI-driven exploration.)
  • Fastify — a fast, simple backend.
  • Anthropic SDK — the AI that generates tests (grounded in the Zeta Core).
  • Direct loading, NOT RAG — because the workspace is closed/bounded, we load a project's knowledge directly. Vector search is added later only for oversized projects. (See packages/app-brain/src/grounding.ts.)

🚀 Getting started (local)

# 1. Prerequisites: Node 20+, Docker
cp .env.example .env          # then fill in ANTHROPIC_API_KEY etc.
npm install
npm run db:up                 # start Postgres
npm run db:generate           # build the database client
npm run db:migrate            # create the tables
# then apply Row-Level Security:
#   psql "$DATABASE_URL" -f packages/database/prisma/migrations/0001_tenant_isolation/migration.sql
npm run dev:api               # start the backend
curl localhost:4000/health    # -> {"ok":true,...}

Or run npm run setup to do most of the above in one step.

✅ How to keep building

Use your Phase 1 Prompt Pack. Each prompt maps to a part of this scaffold:

  • Prompt 1 (data model) → packages/database
  • Prompt 3 (crawler + login) → packages/crawler ⭐
  • Prompt 6 (grounded test cases) → packages/app-brain + packages/agents
  • Prompt 7 (connectors) → packages/connectors

When Phase 1 passes its Final Acceptance, move to the Phase 2–6 Prompt Packs.

🧭 The golden rules (full list in docs/CONSTITUTION.md)

  1. Correctness first. 2. Start simple (direct loading, not RAG).
  2. The Zeta Core is the moat. 4. Tenant isolation is sacred.
  3. Ground, don't guess. 6. Human approves before tests are trusted.

🖥️ Running the frontend (the web app)

The @qip/web package is a Next.js app covering the Phase 1 loop: sign in → create project → paste URL & crawl → view screen map → review tests.

# in one terminal — the backend:
npm run dev:api                  # http://localhost:4000

# in another terminal — the frontend:
cd packages/web
cp .env.local.example .env.local
npm install
npm run dev                      # http://localhost:3000

Open http://localhost:3000, "sign in" with any user id + tenant id (Phase 1 identity stub), create a project, paste a URL, and watch the screen map fill in.