Frameboard
RICE · ICE · MoSCoW · Value × Effort in one workspace - open-source prioritization.
- Next.js 15
- FastAPI
- PostgreSQL
- Open Source
RICE board - priority cards in a grid, score distribution at a glance
Effort × Score scatter plot plus a Top-N bar chart to see how priorities cluster
Pick the framework per workspace (RICE · ICE · MoSCoW · Value × Effort)
Per-member scores, average, and min-max spread in one cell - average alone hides the disagreement
- Problem
Every sprint, PMs burn time arguing "what's next?" across spreadsheets, sticky notes, and Slack threads. Existing tools either lock you to one framework or charge per seat, making them too heavy for a 10-minute decision.
- Context
Built while preparing my own PO/PM transition - the experience of using a prioritization tool was itself the requirement. Improvements surfaced as I used it, and going open source lets other teams reach the same decisions faster.
- Users
PO/PM and product leads running prioritization workshops at team level.
- Hypothesis
Pick the framework per workspace, let each member record their own score, aggregate automatically - and the prioritization meeting shifts from "cleaning numbers" to "debating disagreement."
- What I did
- Polymorphic board across RICE / ICE / MoSCoW / Value × Effort - input columns, legend, and formula switch by framework
- Team scoring - invite members, one score row per person, with average · contributors · min-max spread shown in a single cell
- Ship-it toggle - completed items get struck through and sink to the bottom of the board; a retrospective toggle is separate
- Effort × Score scatter plot + Top-N bar chart (RICE)
- CSV / Notion / Linear export, GitHub OAuth, self-hostable via Docker Compose
- Product decisions
- Framework is a free choice per workspace - accepting the reality that teams are anchored to different baselines
- Average exposed alongside min-max spread - showing only an average pretends consensus exists where dissent has been hidden
- Open source plus free deploy on Cloudflare Pages - lowering the adoption cost is what creates the first entry
- Metrics
Open-source alpha - live at frameboard.pages.dev. Backend pytest at 129 tests, 5 E2E scenarios, CI green.
- Result / Learning
Building my own PM workflow as a tool confirmed that "prioritization is the trigger that starts a conversation, not the score that ends it." Next round experiments with preserving the discussion trail alongside the score.
- Outlook
Open-sourced. Adoption signals and usage patterns will decide whether a premium / SaaS tier is added.
- QA lens on this call
Four frameworks with different input columns, legends, and formulas, all served by one board component - regression test design becomes product consistency verification. From a QA lens, "four modes on one screen" is usually a bug magnet, so it was designed polymorphic from the start.
- Tech stack
- Next.js 15
- TypeScript
- Tailwind
- shadcn/ui
- FastAPI
- SQLAlchemy
- PostgreSQL
- Playwright