An intelligent grievance management platform that transforms how organizations handle complaints — from intelligent intake to automated routing and AI-assisted resolution.
Features • Architecture • Modules • Quick Start • API Reference
ResolveAI is a production-grade, AI-powered grievance management system built to streamline the full lifecycle of complaint handling. It replaces manual, error-prone processes with intelligent automation.
The system features a unified Streamlit application with high-contrast, professional UI components and role-based access:
- 👤 Citizen Dashboard: Submit complaints with AI-driven priority assessment, track status in real-time, and receive resolution notifications.
- 🏢 Department Dashboard: Manage assigned queues, update resolution notes, and track performance metrics.
- 🛡️ Admin Dashboard: Full system oversight, department management, user auditing, and advanced analytics.
- Enhanced UI/UX: Custom CSS injection for high-contrast "Dark Mode" metric cards and professional sidebar navigation.
- Robust Registration: Implemented
st.formfor atomic user registration with client-side validation (regex for emails, space-checks for usernames). - Live Status Updates: Real-time status badges (Open, In Progress, Resolved) with immediate UI feedback.
- Improved Connection Handling: Global API helper with automated error reporting for backend connectivity.
- Expanded API Ecosystem: Added public
/departmentslisting, dedicated/admin/analyticsendpoints, and robust/complaints/{id}/trackhistory. - Surgical Updates: Department officers can now provide resolution notes via atomic
PUT /department/update/{id}calls. - Admin Controls: New capabilities for complaint reassignment and administrative deletion.
- Schema Hardening: Broadened status validation and improved Pydantic models for cross-layer data consistency.
ResolveAI/
├── backend/ # FastAPI application
│ ├── app/
│ │ ├── routers/ # API endpoints (auth, complaints, admin, dept, public)
│ │ ├── services/ # Core business logic & database interactions
│ │ ├── schemas/ # Pydantic validation models
│ │ ├── models/ # Database document structures
│ │ └── main.py # Entry point & router registration
│
├── frontend/ # Unified Streamlit application
│ └── streamlit_app.py # High-performance UI with role-based routing
│
├── ml/ # Machine Learning module
│ ├── training/ # Model training scripts (urgency, duplicate, routing)
│ ├── inference/ # Prediction logic for live complaints
│ └── evaluation/ # Metrics & performance tracking
│
├── llm/ # LLM integration module
│ ├── prompts/ # Specialized templates for resolution & summarization
│ └── email_generator.py # Automated notification logic
│
├── infra/ # Infrastructure & DevOps
│ └── docker-compose.yml # Full-stack orchestration (API + DB + UI)
└── README.md
cd infra
docker-compose up --build- Frontend UI:
http://localhost:8501 - FastAPI Docs:
http://localhost:8000/docs
# Backend
cd backend
pip install -r requirements.txt
uvicorn app.main:app --reload
# Frontend
cd frontend
pip install -r requirements.txt
streamlit run streamlit_app.pyGET /departments— List available departments for registration/submission.
POST /users/login— Citizen login.POST /department/login— Officer login.POST /admin/login— Administrative login.POST /users/create— New citizen registration.
POST /complaints/create— Submit new grievance (Triggers AI analysis).GET /complaints/list— Personal complaint history.GET /complaints/{id}/track— Detailed status and history.PUT /department/update/{id}— Department-level status & resolution update.
GET /admin/analytics— Global metrics (Status distribution, resolution times).PUT /admin/complaints/{id}/assign— Reassign complaint to another department.DELETE /admin/complaints/{id}— Administrative removal of records.
- Frontend: Streamlit (Custom CSS, Pandas for charts)
- Backend: FastAPI (Python 3.10+)
- Database: MongoDB (NoSQL)
- Security: JWT (OAuth2 Password Bearer)
- ML/NLP: Scikit-Learn, MLflow
- Containerization: Docker & Docker Compose