Priority Foregrounds Kanban

A local-first workbench for deterministic product prioritization using a fixed 100-point budget and optional AI-assisted scoring.

https://github.com/davidbmar/prioity_foregrounds_kanban  ·  public  ·  shipped

What it is

A standalone web application that helps product operators make explicit tradeoffs by allocating a strict 100-point budget across five decision principles. It features a deterministic queue ranking system, responsive UI for editing principles, and an optional AI evaluator that proposes scores based on structured prompts while enforcing strict validation contracts to prevent malformed data injection.

Features

Quickstart

python3 -m priority_foregrounds.server

Architecture

flowchart TD
    User[Browser User]
    UI[Web Interface app.js]
    Server[Python HTTP Server]
    Rescore[Rescore Module]
    Cache[In-Memory Cache]
    Gemini[Gemini API]
    Storage[Browser Local Storage]
    User --> UI
    UI --> Server
    Server --> Rescore
    Rescore --> Cache
    Rescore --> Gemini
    UI --> Storage

How it's built

The backend is a lightweight Python HTTP server using the standard library (http.server) to serve static assets and handle API requests. The frontend is a vanilla JavaScript single-page application managing state in browser local storage. AI integration uses the Google Gemini API via a bounded rescore module that enforces rate limits, token budgets, and strict schema validation before accepting any proposed scores.

How it runs

sequenceDiagram
    participant Browser
    participant Server
    participant RescoreModule
    participant GeminiAPI
    Browser->>Server: POST /api/rescore
    Server->>RescoreModule: Validate request schema
    RescoreModule->>RescoreModule: Check rate limits and budgets
    RescoreModule->>GeminiAPI: Send structured prompt
    GeminiAPI-->>RescoreModule: Return JSON scores
    RescoreModule->>RescoreModule: Validate complete set contract
    RescoreModule-->>Server: Return validated result
    Server-->>Browser: 200 OK with scores

How to apply & reuse

Use this tool to replace subjective gut-feel prioritization with a transparent, auditable process. Define your five key decision principles (e.g., Customer Value, Risk, Leverage), assign them weights summing to 100, and input your initiative queue. Use the AI rescoring feature to get consistent, evidence-based scoring suggestions for each principle, then manually review and accept changes to maintain human-in-the-loop control.

At a glance

CapabilitiesDeterministic prioritizationAI-assisted scoringBudget enforcementLocal data persistenceStrict input validation
Componentspriority_foregrounds/server.pypriority_foregrounds/rescore.pyweb/app.jsweb/index.htmlweb/styles.css
TechPython 3.11+JavaScriptHTML5CSS3Google Gemini API
Depends ongoogle-generativeaipython-dotenv
Integrates withGoogle GeminiBrowser Local Storage
PatternsHuman-in-the-loopFail-closed validationLocal-first architectureRate limitingRequest coalescing
Reuse tagsproduct-managementprioritizationkanbanai-evaluationlocal-server

Repo hygiene

✓ all on main — nothing unmerged.