Skip to content

Latest commit

 

History

History
147 lines (95 loc) · 4.74 KB

File metadata and controls

147 lines (95 loc) · 4.74 KB

🏙️ NammaCity (CivicSense)

Empowering Citizens to Fix Their Cities with AI & Geo-Intelligence.

Built for the TechSprint Hackathon 2025

image

💡 The Problem

Local civic issues—like dangerous potholes, uncollected garbage, or waterlogging—often go unreported because the process is tedious. Citizens don't know who to contact, and authorities receive unstructured, vague complaints that are hard to prioritize.

🚀 The Solution

NammaCity is a Flutter-based mobile application that bridges the gap between citizens and the government using Google's latest AI and Cloud tools.

  1. Snap & Solve: Users simply take a photo of an issue.
  2. AI Analysis: Gemini 2.5 Flash instantly analyzes the image to identify the problem (e.g., "Pothole"), assess severity ("High"), and draft a professional report.
  3. Geo-Verification: The issue is pinned on a Google Map with precise coordinates, preventing duplicate reporting.
  4. Actionable Data: Authorities receive structured, validated data instead of random complaints.

🛠️ Tech Stack (The Google Ecosystem)

This project leverages the full power of the Google Cloud & AI stack:

Component Technology Purpose
Mobile Framework Flutter Cross-platform, high-performance UI.
AI Model Gemini 2.5 Flash Multimodal image analysis (via Vertex AI).
AI SDK Firebase AI Logic Unified SDK for secure, server-side AI calls.
Backend Firebase Auth, Firestore (NoSQL DB), Storage (Images).
Location Google Maps SDK Real-time mapping, Geocoding, and Visualization.
Identity Aadhaar Auth (Simulated) Secure identity verification for trusted reports.

🤖 AI Logic (Gemini 2.5)

We don't just "label" images; we extract structured intelligence.

  • Input: Raw image byte stream.
  • Model: gemini-2.5-flash-lite (Optimized for speed & cost).
  • Output: Strictly validated JSON schema.
{
  "category": "Pothole",
  "severity": "Critical",
  "description": "Large pothole on main road causing traffic slowdown. Approx 2ft wide.",
  "estimated_fix_time": "4-6 hours",
  "is_valid_issue": true
}

📱 Features

  • 📍 Live Issue Map: View all reported issues in your locality on an interactive Google Map.
  • 📷 AI-Powered Reporting: No forms to fill. Just click a picture, and Gemini fills the details.
  • 🚦 Severity Grading: AI automatically flags "Critical" issues (like open manholes) for immediate attention.
  • 🔐 Verified Citizen Access: Sign-up flow using Aadhaar verification to ensure genuine reports.

⚙️ Setup & Installation

Follow these steps to run the project locally.

Prerequisites

  • Flutter SDK (3.24+)
  • Dart SDK (3.5+)
  • A Firebase Project with Blaze Plan (Required for Vertex AI).

1. Clone the Repository

git clone https://github.com/your-username/namma-city.git
cd namma-city

2. Install Dependencies

flutter pub get

3. Firebase Configuration

  • Go to Firebase Console.
  • Create a new project.
  • Enable Authentication, Firestore, and Storage.
  • Crucial: Go to the "Gen AI" tab and enable Vertex AI.
  • Download google-services.json and place it in android/app/.

4. Google Maps Setup

  • Get a Google Maps API Key from Google Cloud Console.
  • Add it to your android/app/src/main/AndroidManifest.xml:
<meta-data android:name="com.google.android.geo.API_KEY"
           android:value="YOUR_MAPS_API_KEY"/>

5. Run the App

flutter run

📸 Screenshots

Home (Map View) AI Analysis Report Confirmation
image image image

|


🔮 Future Roadmap

  • Multimodal Video Support: Allow 5-second videos to show water flow/leakage (supported by Gemini 2.5).
  • Offline Mode: Use TensorFlow Lite for on-device detection when internet is poor.
  • Language Localization: Use Google Translation API to convert reports into local regional languages automatically.

👥 Team

  • Rethanya P - Team Lead
  • Ramanan Mahendran - Team Member

Built with ❤️ and ☕ in Chennai @ SSN College of Engineering.