Project Story What Inspired Us We partnered with 9+ nonprofits across 7 hackathons (2016–2024). Every single one had the same problem: case managers spend 20+ minutes per client typing up session notes instead of serving more people. Enterprise software costs $50-150/user/month—completely out of reach for organizations with $1M budgets. We realized: Why type when you can speak? What We Built CaseFlow is an open-source case management platform with AI-powered voice-to-notes. The feature: After a 30-minute client session, a case manager records a 2-minute audio note. Our system (OpenAI Whisper + GPT-4o) instantly transcribes and structures it into:

Summary of what happened Service type (Therapy, Crisis Support, Intake, etc) Key observations about the client Action items (follow-ups needed) Mood/risk assessment Suggested follow-up date

Case manager reviews, edits, saves. Done in 3 minutes instead of 23. How We Built It

Frontend: Next.js 14 + React + shadcn/ui for a clean, accessible UI AI Pipeline: Browser MediaRecorder API → OpenAI Whisper (transcribe) → GPT-4o-mini (structure) Backend: Next.js API Routes to securely handle OpenAI calls (never expose API keys to browser) Database: Supabase PostgreSQL for reliable, affordable storage Hosting: Vercel for one-click deploy

Cost per note: ~$0.01-0.03. A case manager saves 18 minutes per client. ROI is instant. What We Learned

Simplicity wins. Nonprofits don't need fancy features—they need tools that save time and actually work. Audio is underrated. People speak 3x faster than they type. One 2-minute recording replaces 20 minutes of typing. LLMs are production-ready. Whisper + GPT-4o work reliably in production. The bottleneck isn't AI—it's UX and trust. Git workflows matter. Building in separate branches (meena) meant P0/P1 teams weren't blocked by P2-AI development. Merge conflicts teach you things. Combining code from multiple team members revealed what actually matters (both features coexist cleanly).

Challenges We Faced Challenge 1: Security

Can't call OpenAI from the browser (exposes API keys) Solution: Next.js API Routes as a secure middleman. Audio never leaves the server, only transcript + structured data comes back.

Challenge 2: Audio Quality

Background noise, accents, medical jargon Solution: Whisper's echo_cancellation and noise_suppression options. Works surprisingly well in noisy clinics.

Challenge 3: Structured Data Extraction

GPT-4o sometimes returns malformed JSON Solution: System prompt with clear JSON schema. Retry on parse error. Validate before saving.

Challenge 4: Team Coordination

P0/P1 teams building simultaneously on main branch Solution: Feature branch (meena). Merge conflicts resolved manually. Communication > tools.

Challenge 5: Scope Creep

Easy to add features (semantic search, funder reports, multilingual) Solution: Focused on MVP (voice-to-notes only). Other features are P2s—ship later.

What's Next

Semantic search across case notes ("Which clients did we refer to housing?") AI-generated grant reports (3 days of work → 10 minutes) Multilingual support (Spanish intake forms, auto-translate notes) Mobile app for field workers

Why This Matters Nonprofits serve millions of people with fraction of resources they deserve. If we can give case managers back 6+ hours per week, they serve more clients. Better outcomes. Bigger impact. CaseFlow is our way of saying: Open-source software should prioritize time-poor organizations, not just scale-focused startups.

Built With

Share this project:

Updates