Hackathon Project Summary

Inspiration

My aunt waited three months for her son's birth certificate—endless trips to district offices, lost paperwork, zero visibility. Across Ghana, thousands face the same reality: handwritten forms, physical queues, and a system that forces citizens to chase paper. We wanted to digitize everything from submission to verification in one weekend.

What it does

A complete digital platform for Ghana's Births and Deaths Registry where:

  • Citizens register births/deaths online, pay via Paystack, track applications in real-time, and download QR-verifiable certificates
  • Staff review applications with AI assistance (fraud detection, response drafting, quality analysis)
  • Admins oversee operations with AI daily briefings and workload optimization
  • Researchers purchase statistical data with automated instant delivery after payment

How we built it

Stack: React + Vite frontend, FastAPI backend, Neon PostgreSQL, Claude + Gemini AI, Paystack payments

48-hour sprint:

  • Hours 0–16: Database schema, JWT auth, citizen portal with multi-step forms
  • Hours 16–28: Staff/admin dashboards, Paystack integration, WebSocket notifications
  • Hours 28–40: Six AI features, PDF certificates with QR codes
  • Hours 40–48: Statistics auto-fulfillment, bug fixes, documentation

Challenges we ran into

  • Neon cold starts (10–15s latency) → fixed with 60-second caching and partial indexes
  • AI markdown in letters → rewrote prompts to forbid formatting
  • Git history divergence → rebuilt from fresh branches with clean commits
  • Status transition blocks → extended dropdown to include AI-recommended statuses

Accomplishments we're proud of

  • 60+ API endpoints and 25+ frontend pages fully functional
  • Six AI features with Claude + Gemini fallback—staff review time cut from 30 minutes to 3 seconds
  • Auto-fulfillment pipeline—researchers get data within seconds of payment, not days
  • QR certificate verification—anyone can scan and verify authenticity instantly
  • Zero UI libraries—all custom CSS with dark/light theme support

What we learned

  • Cache aggressively with serverless databases
  • Webhooks > polling for payment fulfillment
  • Dual-provider AI saves demos when APIs fail
  • Pydantic models prevent silent validation failures
  • Demo-driven development keeps scope in check

What's next

  • SMS notifications, mobile app, National ID API integration
  • Biometric liveness checks, Excel exports, multi-language support
  • Automated daily database snapshots for disaster recovery

Built With

  • alembic-migrations
  • anthropic
  • claude
  • css-variables
  • fastapi
  • gemini
  • google
  • lucide-icons
  • python
  • react-18-+-vite
  • react-router-v6
  • recharts
  • recharts-python-fastapi
  • redis
  • sqlalchemy-orm
  • tailwindcss
  • websocket
Share this project:

Updates