City Guardian – An AI Assistant for Smarter Cities
Inspiration
We were inspired by the daily challenges cities face with unresolved issues like potholes, broken streetlights, garbage dumps, and flooding. Most of these problems get fixed only when citizens complain — and even then, reports often get lost, duplicated, or delayed.
We thought: “What if AI could become a city’s digital guardian, spotting problems faster than humans?”
That idea gave birth to City Guardian.
What it does
City Guardian is an AI assistant that detects and tracks city problems automatically.
- Scans social media (Twitter, Reddit), news, and complaint portals for problem reports.
- Uses NLP to filter out fake or duplicate entries.
- Extracts locations and categorizes issues like potholes, garbage, or streetlight failures.
- Files complaints automatically (or simulates it) and updates a live dashboard.
- Provides a city-wide map dashboard showing issues with status (pending, in progress, fixed).
How we built it
- Scout Agent (Finder): Twitter/Reddit APIs + RSS feeds for collecting problem reports.
- Validator Agent (Judge): NLP models (GPT/Transformers) to remove duplicates and validate authenticity.
- Location extraction using Named Entity Recognition (NER) + Google Maps/OpenStreetMap APIs.
- Location extraction using Named Entity Recognition (NER) + Google Maps/OpenStreetMap APIs.
- Executor Agent (Doer): Selenium/Playwright for complaint filing in portals (or simulation).
- Dashboard (Control Center): Built in React.js + Mapbox/Leaflet.js for visualization.
- Backend & Database: Flask/FastAPI with Firebase/PostgreSQL for storing structured reports.
Challenges we ran into
- Handling noisy social media data and API rate limits.
- Extracting accurate locations from vague text like “near central park gate”.
- Designing a deduplication system to handle multiple reports for the same issue.
- Automating dynamic complaint portals with Selenium/Playwright.
- Ensuring scalability for thousands of daily reports across multiple cities.
Accomplishments that we're proud of
- Integrated AI + automation + mapping into a single working prototype.
- Built a real-time dashboard that maps problems live.
- Achieved reliable NLP-based filtering for duplicates and irrelevant data.
- Created a project with practical social impact for governments and citizens.
What we learned
- Practical use of NLP for text classification, validation, and location extraction.
- Integrating multiple APIs (social media + maps + automation tools).
- Importance of data cleaning and deduplication in AI-driven systems.
- Building a full-stack system with React frontend, Flask backend, and a cloud database.
- How combining AI + automation + civic tech creates smarter cities.
What's next for City Guardian
- Support for image and voice-based reporting.
- Adding sentiment/emotion analysis to prioritize urgent issues.
- Integration with IoT sensors (flood detectors, traffic cameras).
- Collaborations with local authorities for real-world deployment.
- Expanding to multiple cities → building a scalable smart-city platform.
Built With
- aws/gcp
- docker
- fastapi
- firebase
- flask
- google-maps
- hugging-face
- mapbox
- openai-api
- playwright
- postgresql
- python
- react.js
- selenium
Log in or sign up for Devpost to join the conversation.