Civic-AI is an intelligent, multilingual assistant designed to demystify government schemes, legal notices, and public services for every Indian citizen. By leveraging advanced AI and OCR technology, it breaks down complex bureaucratic language into simple, actionable insights in local languages.
-
๐ค AI-Powered Simplification: Instantly translates complex government jargon into simple, easy-to-understand language.
-
๐ Document Analysis (OCR): Upload photos of notices or forms to get instant summaries and action items.
-
๐ฃ๏ธ Multilingual Support: Interacts in English, Hindi, Marathi, Bengali, Tamil, Telugu, and more.
-
๐ก๏ธ Smart Fallback System: Ensures users get critical information about schemes (like PM Kisan, Ayushman Bharat) even when AI services are offline.
-
๐ Secure & Private: Built with enterprise-grade authentication and row-level security.
- Framework: Next.js 15 (App Router)
- Styling: Tailwind CSS
- State Management: React Context API
- HTTP Client: Axios
- Framework: FastAPI (Python)
- AI Engine: Google Gemini 1.5 Flash
- Database & Auth: Supabase (PostgreSQL + GoTrue)
- Image Processing: Pillow (PIL)
root/
โโโ client/ # Frontend Application
โ โโโ app/ # Next.js Pages & Routes
โ โโโ components/ # Reusable UI Components
โ โโโ lib/ # API Clients & Utilities
โ โโโ contexts/ # Auth & Global State
โ
โโโ server/ # Backend API Service
โ โโโ main.py # Application Entry Point & Routes
โ โโโ fallbacks.py # Offline Content & Logic
โ โโโ requirements.txt # Python Dependencies
โ
โโโ kiro/ # Project Documentation & Design
โโโ architecture.md # System Design
โโโ problem.md # Problem Statement
โโโ solution.md # Solution Overview
- Node.js 18+
- Python 3.10+
- Supabase Account
- Google Gemini API Key
git clone https://github.com/yourusername/civic-ai.git
cd civic-aicd server python -m venv venv # Windows .\venv\Scripts\activate # Mac/Linux source venv/bin/activate pip install -r requirements.txt
Create a .env file in server/:
SUPABASE_URL=your_supabase_url SUPABASE_ANON_KEY=your_supabase_anon_key SUPABASE_SERVICE_ROLE_KEY=your_service_role_key GEMINI_API_KEY=your_gemini_key
Run the server:
uvicorn main:app --reload
cd client
npm installCreate a .env.local file in client/:
NEXT_PUBLIC_SUPABASE_URL=your_supabase_url NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key NEXT_PUBLIC_API_URL=http://localhost:8000
Run the client:
npm run dev
Visit http://localhost:3000 to see the app in action.
Government services are often inaccessible due to:
- Complex Language: Legal and bureaucratic terms confuse citizens.
- Language Barriers: Most information is in English, excluding non-English speakers.
- Middlemen: Dependence on agents leads to misinformation and exploitation.
Civic-AI solves this by putting a personal government expert in every citizen's pocket.
This project is licensed under the MIT License.