Skip to content

Repository files navigation

ProductPulse

Executive product-analytics dashboard that traces shipped initiatives to the metric movement they actually caused. A read-only, synthetic-data demo from Fischer Product Lab.

Live: productpulse-fpl.vercel.app

Most growth dashboards answer what happened. ProductPulse also answers what did we ship that caused it, and did it work? — via an Initiative Registry that connects every shipped initiative (AI and standard alike) to its before→after adoption movement and a deterministically computed impact status.

How it pairs with AgentOps

AgentOps asks "is this AI initiative safe to launch?" before it ships. ProductPulse asks "did it actually work?" after it ships. Same suite, same rigor — governance before, accountability after.

Screens

Route Screen Job
/ Executive Brief North Star metric, headline KPIs, needs-attention list
/adoption Adoption & Activation Signup→Activated→Habitual funnel; adoption by initiative
/engagement Engagement & Usage DAU/WAU/MAU trend, stickiness, user segments
/retention Retention & Churn Risk (V1.1) Cohort retention curves, churn-risk segmentation
/revenue Revenue & Business Impact MRR trend, expansion/contraction, NRR, AI cost savings
/initiatives Initiative Registry Every shipped initiative, before→after movement, computed status
/about About Product context, architecture, security posture, metric glossary

The impact engine

The centerpiece is a pure function, src/lib/impact.ts, that rates every initiative Strong Impact, Monitor, or Underperforming from stored numbers:

  • Adoption lift ≥ 25 pts and a measurable business outcome (>5 hrs/month saved or >$1,000 revenue impact) → Strong Impact
  • Adoption lift < 5 pts → Underperforming
  • Anything between → Monitor

No AI calls, no scoring drift: same inputs, same status, always. The UI only ever displays what this function returns — statuses are never hardcoded. A vitest suite asserts the status of every seeded initiative plus dataset consistency (MRR movement math, segment coverage).

V1.1 added a second engine in the same mold: src/lib/churn-risk.ts rates each user segment Low, Elevated, or High churn risk from stored usage signals (session frequency, recency, seat utilization), with its own test suite and cross-checks tying cohort sizes to the adoption funnel and segment MRR to the revenue history.

V1.2 added the evidence behind the registry: every initiative card charts its adoption series around the launch date, and a deterministic attribution helper (src/lib/attribution.ts) flags any other launch within 42 days as a shared-window caveat — because claiming clean attribution without one would be dishonest. AI initiatives reviewed in AgentOps deep-link to their pre-launch governance record in its registry: governance before, accountability after, one click apart.

Stack

  • Next.js (App Router) · TypeScript strict mode · Tailwind CSS · shadcn/ui · Recharts
  • No backend, no database — a fully typed synthetic dataset in src/data/productpulse.ts
  • Every route statically prerendered; deployed on Vercel from GitHub main
  • Fonts: Fraunces (headings) and Hanken Grotesk (body) via next/font

Getting started

npm install
npm run dev     # http://localhost:3000
npm test        # vitest — impact engine + dataset consistency
npm run lint
npm run build

No environment variables required.

Security posture

Read-only by design: no forms, no write paths, no auth, no uploads, no cookies, no secrets. All data is synthetic and labeled as such in the UI. See SECURITY.md and the STRIDE threat model.

Fischer Product Lab

One thesis: turn noisy, high-stakes reality into governed, decision-quality executive signal.

  • AgentOps — AI agent governance control tower
  • TrustDesk — customer trust automation
  • VulnBoard — executive vulnerability metrics
  • ProductPulse — product performance accountability (this repo)

All figures in this application are synthetic demo data. No real product, customer, or revenue data is represented.

About

ProductPulse - executive product-analytics dashboard tracing shipped initiatives to the metric movement they caused. Read-only synthetic-data demo. Part of Fischer Product Lab.

Resources

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages