Independent product · Live
Congress for Normal People
A production web app that helps people follow Congress without reading bills all day.
The problem
Congressional data is public, but it is spread across dense documents and government websites. I wanted a simpler way to see what representatives are doing and how legislation could affect an individual person.
The approach
Next.js handles the product interface. FastAPI serves the backend, PostgreSQL and Supabase store legislative and user data, and LangGraph workflows generate personalized reports. The app is deployed across Vercel and Render.
- Use primary legislative sources
- Generate reports around a user’s interests
- Keep AI output tied to source material
The challenge
The hardest part was turning changing legislative data into reports that stay useful and grounded. The ingestion and generation workflows also needed to run reliably in production.
What I learned
Good civic software needs clear sources and simple language. The AI is useful when it removes work for the reader, not when it calls attention to itself.