Build Rank feature prioritization tool
This commit is contained in:
@@ -0,0 +1,58 @@
|
||||
# Rank
|
||||
|
||||
Interactive feature prioritization tool for `rank.friborg.uk`.
|
||||
|
||||
## Product definition
|
||||
|
||||
Rank is a fast intake and prioritization board for product ideas from Jimmi and agents.
|
||||
|
||||
Core loop:
|
||||
|
||||
`Capture idea → score impact/effort/confidence/urgency → drag into milestone → revisit top-ranked work`
|
||||
|
||||
Chosen subdomain: `rank.friborg.uk` — short, memorable, and honest about the job.
|
||||
|
||||
## UX principles
|
||||
|
||||
- One-screen capture, no modal ceremony.
|
||||
- Keyboard-first: `/` focuses capture, Enter saves.
|
||||
- Plain sharp visual system: zero rounded corners, dark space/glass, high contrast.
|
||||
- Milestones are customizable lanes, not a rigid roadmap prison.
|
||||
- Agents can post ideas through the same API endpoint as the UI.
|
||||
|
||||
## Architecture
|
||||
|
||||
- Node/Express app on port `3045`
|
||||
- Static SPA in `public/`
|
||||
- Appwrite TablesDB persistence
|
||||
- Docker deploy on Unraid
|
||||
- Gitea remote repo
|
||||
- Nginx Proxy Manager routes `rank.friborg.uk` → `192.168.30.100:3045`
|
||||
|
||||
## Appwrite schema
|
||||
|
||||
Database: `priority_rank`
|
||||
|
||||
Tables:
|
||||
|
||||
- `ideas` — title, description, source, sourceName, milestoneId, impact, effort, confidence, urgency, score, rank, labels, notes, archived
|
||||
- `milestones` — name, description, horizon, color, position, active
|
||||
- `activity` — small append-only UX feed
|
||||
|
||||
## Commands
|
||||
|
||||
```bash
|
||||
npm run setup:appwrite
|
||||
npm run check
|
||||
PORT=3045 node server.js
|
||||
npm run smoke
|
||||
```
|
||||
|
||||
Agent idea post:
|
||||
|
||||
```bash
|
||||
curl -X POST https://rank.friborg.uk/api/ideas \
|
||||
-H 'Content-Type: application/json' \
|
||||
-H "Authorization: Bearer $RANK_AGENT_TOKEN" \
|
||||
-d '{"title":"Add public roadmap export","source":"agent","sourceName":"Rook","impact":8,"effort":3,"confidence":7,"urgency":5}'
|
||||
```
|
||||
Reference in New Issue
Block a user