๐Ÿš€ CivicAI โ€“ Smart Complaint System

๐Ÿ’ก Inspiration

Have you ever seen a pothole on the road or garbage piling up nearby and thought, โ€œSomeone should fix thisโ€?

The reality is, many civic issues go unresolved because people either donโ€™t report them, donโ€™t know where to report them, or their complaints get ignored or duplicated. This gap between citizens and authorities inspired us to build CivicAI โ€” a platform that makes reporting issues simple, smart, and impactful.


โš™๏ธ What it does

CivicAI is an AI-powered web application that allows citizens to report civic issues like garbage, potholes, water leakage, and street light failures.

  • Users upload an image and optional description (or use voice input ๐ŸŽค)
  • AI classifies the issue and assigns a severity level (Low, Medium, High)
  • The system detects duplicate complaints within a 50-meter radius
  • Complaints are automatically routed to the correct department
  • Users can track complaint status in real-time
  • Authorities manage and resolve issues through an admin dashboard with analytics and map view
  • Works even offline and syncs automatically when connected

๐Ÿ› ๏ธ How we built it

We built CivicAI as a full-stack, scalable application:

  • Frontend: React.js + Tailwind CSS for a clean, responsive UI
  • Backend: Node.js + Express for API handling
  • Database: Firebase Firestore for real-time data storage
  • AI Integration: Featherless.ai API for image classification
  • Maps & Location: Google Maps API for geolocation and visualization

For duplicate detection, we used a distance-based approach:

[ d = \sqrt{(lat_1 - lat_2)^2 + (lon_1 - lon_2)^2} ]

If ( d \leq 50 ) meters and the issue type matches, it is considered a duplicate.


โšก Challenges we ran into

  • Duplicate Detection: Accurately detecting nearby complaints required handling real-world GPS variations
  • AI Reliability: Ensuring correct classification and handling low-confidence predictions
  • Offline Support: Managing local storage and syncing data seamlessly
  • Role-Based System: Designing separate flows for citizens and authorities without complicating UX
  • Real-time Updates: Keeping complaint status updated across users and admins

๐Ÿ† Accomplishments that we're proud of

  • Built a fully functional AI-powered civic platform
  • Successfully integrated image classification + rule-based severity detection
  • Implemented duplicate complaint prevention, improving efficiency
  • Created a clean, responsive UI with real-time tracking
  • Designed a complete admin dashboard with analytics and map view
  • Added offline support and voice input, enhancing accessibility

๐Ÿ“š What we learned

  • How to build real-world, impact-driven applications
  • Integrating AI APIs into full-stack systems
  • Working with geolocation, maps, and spatial logic
  • Importance of user-centric design and simplicity
  • Handling edge cases like duplicates, offline data, and sync conflicts
  • Thinking beyond code โ€” as problem solvers and product builders

๐Ÿ”ฎ What's next for CivicAI

  • Improve AI with custom-trained models for higher accuracy
  • Add multi-language voice support for wider accessibility
  • Implement push notifications for status updates
  • Introduce government API integration for real deployment
  • Enhance analytics with predictive insights and heatmaps
  • Launch as a Progressive Web App (PWA) for better performance

CivicAI is not just a project โ€” itโ€™s a step toward smarter cities and empowered citizens. ๐ŸŒ

Built With

Share this project:

Updates