VayuNetra
AI-Powered Air Pollution Monitoring
Empowering Bengaluru's 12 million citizens with Amazon Nova AI — Amazon Nova AI Hackathon 2026
Amazon Nova 2 Lite
Multimodal photo analysis — detects pollution type, severity, health risk
Amazon Nova 2 Sonic
Voice transcription in Kannada, Hindi, English
Nova Multimodal Embeddings
Semantic similarity search using VECTOR(1024) cosine similarity
Nova Act
UI automation — auto-files complaints to KSPCB government portal
Mobile App
Flutter Android app with camera, GPS, voice reporting
Backend API
FastAPI + Amazon Bedrock on AWS Lightsail
Vector Database
PostgreSQL + pgvector with VECTOR(1024) embeddings
Secure & Scalable
JWT auth, HTTPS, rate limiting, AWS production deployment
🚀 Quick Start
Test the Live System
Test Credentials
test@vayunetra.com
Test@1234
Download Mobile App
⬇ Download APKLogin with test credentials above
🏆 Amazon Nova AI Hackathon 2026
VayuNetra showcases all 4 Amazon Nova model families to solve air pollution challenges in Bengaluru, India.
Key AI Innovations
- Multi-Round Tool Calling — Agent autonomously chains SQL queries → hotspot detection → health advice
- Nova 2 Lite Multimodal — Photo analysis: pollution_type, severity, health_risk, confidence score
- Nova 2 Sonic Voice AI — Voice reporting in Kannada, Hindi, English
- Nova Multimodal Embeddings — Similar report search using VECTOR(1024) cosine similarity
- Nova Act UI Automation — Auto-files complaint letters to KSPCB government portal
Documentation
🏗️ System Architecture Overview
🤖 AI Agent Multi-Round Tool Calling
| User | FastAPI | Nova 2 Lite | Tools | DB | Response |
|---|---|---|---|---|---|
| POST /api/chat → | |||||
| Initial prompt + 5 tools → | |||||
| Round 1: I need pollution data | |||||
| execute_sql_query → | |||||
| SELECT reports... → | |||||
| {data, count} ← | |||||
| Round 2: Formulating response | |||||
| Final answer + tools_used → User | |||||
📸 AI-Powered Image Analysis
• severity: HIGH
• health_risk: MODERATE
• confidence: 0.95
🤖 Nova Act — Complaint Filing
About This Docs Site
This documentation site is built for the Amazon Nova AI Hackathon 2026 submission.
📱 Mobile App Overview
- Photo capture with GPS tagging
- Voice reporting (EN/KN/HI)
- Real-time pollution map
- Nova 2 Lite AI analysis
- Complaint letter viewer
- Badge and points system
- AI agent chat
- Similar reports finder
- Nova Act complaint filing
Tech Stack
Credentials: test@vayunetra.com / Test@1234
🤖 Testing on Android
- Download APK from link above
- Enable "Install unknown apps" in Android settings
- Open APK file to install VayuNetra
- Launch the app
- Login: test@vayunetra.com / Test@1234
- Go to Report tab (camera icon)
- Take photo of any outdoor pollution
- Add area: "Koramangala, Bengaluru"
- Tap "Analyze with Nova AI"
- Wait 15-20 seconds for Nova 2 Lite analysis
- View severity badge + complaint letter
- Tap "Auto-File with Nova Act" button
⚡ Backend API Overview
Base URL:
https://api.vayunetra.com
Health check
curl https://api.vayunetra.com/health
Response:
{
"status": "ok",
"db": "connected",
"nova_models": {
"lite": "us.amazon.nova-2-lite-v1:0",
"sonic": "amazon.nova-2-sonic-v1:0",
"embed": "amazon.nova-2-multimodal-embeddings-v1:0",
"act": "amazon.nova-act-v1:0"
}
}
API Endpoints
| Method | Endpoint | Description | Auth |
|---|---|---|---|
| POST | /api/auth/register | Register user | No |
| POST | /api/auth/login | Login get JWT | No |
| GET | /api/auth/me | Current user | Yes |
| POST | /api/reports | Submit report+Nova | Yes |
| GET | /api/reports | All reports | No |
| GET | /api/reports/{id} | Single report | No |
| GET | /api/my-reports | My reports | Yes |
| DELETE | /api/reports/{id} | Delete report | Yes |
| GET | /api/stats | Dashboard stats | No |
| GET | /api/leaderboard | Top users | No |
| POST | /api/chat | AI agent chat | No |
| GET | /api/search | Search by area | No |
| GET | /api/similar/{id} | Similar reports | No |
| POST | /api/voice | Voice transcribe | Yes |
| GET | /api/clean-zones | Clean air zones | No |
| POST | /api/file-complaint/{id} | Nova Act filing | Yes |
| GET | /health | Health check | No |
Nova Models
🤖 AI Agent Overview
VayuNetra's AI agent uses Amazon Nova 2 Lite with multi-round tool calling to answer questions about Bengaluru's air quality using real-time data.
5 Tools
| Tool | Description | Data Source |
|---|---|---|
| execute_sql_query | Query pollution database | PostgreSQL RDS |
| get_clean_air_zones | 6 clean zones with AQI | Static + API |
| get_pollution_hotspots | Top N areas by severity | reports table |
| get_area_stats | Count + avg severity for area | reports table |
| get_health_advice | Health advice by severity | Built-in logic |
Example conversation
🗄️ Database Schema
16 tables with pgvector VECTOR(1024) support for semantic similarity search.
users
id | email | username | points | badge_level | report_count | created_at
reports
id | user_id | photo_url | area | latitude | longitude | status | complaint_letter | created_at
analysis_results ⭐
id | report_id | severity | pollution_type | health_risk | confidence | description | image_embedding VECTOR(1024)
Semantic Similarity Search
Every report photo generates a VECTOR(1024) embedding via Nova Multimodal Embeddings stored in PostgreSQL with pgvector extension.
-- Find similar pollution reports SELECT r.area, r.photo_url, ar.severity, ar.pollution_type, 1 - (ar.image_embedding <=> $1::vector) AS similarity FROM reports r JOIN analysis_results ar ON r.id = ar.report_id ORDER BY similarity DESC LIMIT 5;