TranaAI (from Sanskrit เคคเฅเคฐเคพเคฃ โ Rescue ยท Deliverance ยท Protection) is an AI-powered disaster response command center built for Google Solution Challenge 2026. It gives emergency coordinators real-time situational awareness across 30 disaster zones in India โ combining live weather data, seismic monitoring, and Google Gemini AI to deliver actionable intelligence when every second matters.
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ๐จ Disaster Strikes โ ๐ก TranaAI Activates โ ๐ค Gemini Thinks โ
โ ๐บ๏ธ Map Updates โ ๐ฅ Volunteers Deploy โ โ
Lives Saved โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
Open the link โ Click "Launch Dashboard" โ Full command center in your browser
| Step | Action | Result |
|---|---|---|
| 1 | Open live demo link | ๐ Landing page loads |
| 2 | Click "Launch Dashboard" | ๐ฌ Cinematic entry animation |
| 3 | Click "Run AI Allocation" | ๐บ๏ธ Deployment lines appear on map |
| 4 | Paste your free Gemini key | ๐ค AI analysis unlocks |
| 5 | Click ๐๏ธ mic โ Say "Run AI" |
โก Voice command executes |
๐ What works without an API key?
| Feature | Without Key | With Gemini Key |
|---|---|---|
| ๐บ๏ธ Command Center & Map | โ Full Access | โ Full Access |
| โก AI Allocation Engine | โ Full Access | โ Full Access |
| ๐ฎ What-If Simulation | โ Full Access | โ Full Access |
| ๐ฅ Personnel Management | โ Full Access | โ Full Access |
| ๐ Incident Reporting | โ Full Access | โ Full Access |
| ๐๏ธ Voice Commands | โ Full Access | โ Full Access |
| ๐ฌ Crisis Replay | โ Full Access | โ Full Access |
| ๐ฆ๏ธ 72-Hour Weather Forecast | โ Full Access | โ Full Access |
| ๐ง Gemini AI Analysis | โ Locked | โ Unlocked |
| ๐ Prediction Briefings | โ Locked | โ Unlocked |
| ๐ฌ Ask Gemini Q&A | โ Locked | โ Unlocked |
๐ก Get a free Gemini API key at aistudio.google.com โ takes 30 seconds. Keys stay in your browser only, never sent to any server.
|
|
|
|
|
|
The core allocation engine uses a weighted composite score:
P(zone) = wโ ร (severity / 10) + wโ ร min(pop / 400K, 1) + wโ ร min((20 - res) / 20, 1) + wโ ร min(max(trend, 0) / 2, 1)
| Weight | Default | Factor | Rationale |
|---|---|---|---|
| wโ | 0.40 |
Base Severity | Ground truth conditions |
| wโ | 0.20 |
Population | Human impact scale |
| wโ | 0.20 |
Resource Gap | Supply deficit urgency |
| wโ | 0.20 |
Severity Trend | Rate of deterioration |
๐๏ธ All weights are user-tunable in real time via the Priority Engine panel
| ๐ Flood Risk | ๐ Cyclone Risk | ๐ก๏ธ Heatwave Risk | ๐ Earthquake Risk |
|---|---|---|---|
| 40% weight | 25% weight | 20% weight | 15% weight |
| Precipitation + probability | Wind speed + storm codes | Temperature > 42ยฐC | USGS events within 200km |
Uses the Haversine formula for geographic distance calculations between cities and seismic events.
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ๐ก๏ธ TranaAI โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฃ
โ โ
โ โโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโ โ
โ โ ๐ Landing โ โ ๐บ๏ธ Command Center โ โ ๐ฎ Prediction โ โ
โ โ Page โ โ (Main HQ) โ โ Engine (72-hr) โ โ
โ โโโโโโโโโโโโโโโ โโโโโโโโโโฌโโโโโโโโโโ โโโโโโโโโโโฌโโโโโโโโโโ โ
โ โ โ โ
โ โโโโโโโโโโโโโโโ โโโโโโโโโโดโโโโโโโโโโ โโโโโโโโโโโดโโโโโโโโโโ โ
โ โ ๐ง AI โ โ โก What-If โ โ ๐ฅ Personnel โ โ
โ โ Priority โ โ Simulation โ โ Management โ โ
โ โโโโโโโโฌโโโโโโโ โโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโ โ
โ โ โ
โ โโโโโโโโโโโงโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฃ
โ โ๏ธ Zustand Store โ
โ zones[] ยท personnel[] ยท weights{} ยท predictions[] โ
โ aiAllocations[] ยท mapPolylines[] ยท stateHistory[] โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฃ
โ ๐ External Services โ
โ ๐ค Google Gemini 2.0 Flash ยท ๐ค๏ธ Open-Meteo API โ
โ ๐ USGS Earthquake API ยท ๐บ๏ธ Google Maps JS API โ
โ ๐๏ธ Web Speech API โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ๐ต Google Ecosystem โ
โ โ
โ ๐ค Gemini 2.0 Flash โ Core AI: triage, Q&A, forecasts โ
โ ๐บ๏ธ Maps JavaScript API โ Interactive disaster map โ
โ ๐ค Google Fonts โ Rajdhani military typography โ
โ ๐๏ธ Web Speech API โ Voice command interface โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
| Source | Data | Frequency |
|---|---|---|
| ๐ค๏ธ Open-Meteo API | 72-hour forecasts (precip, wind, temp) | Every 10 min |
| ๐ USGS Earthquake API | M2.5+ quakes, India bounding box, past 7 days | Every 10 min |
| ๐ Internal Zone Data | 30 Indian cities โ severity, population, resources | Real-time sim |
| ๐ค Google Gemini | AI-generated threat analysis & prediction reasoning | On-demand |
Node.js โฅ 18 ยท pnpm (recommended) ยท Gemini API Key ยท Google Maps API Key# 1. Clone the repository
git clone https://github.com/UTKARSHH20/trana-ai.git
cd trana-ai
# 2. Install dependencies
pnpm install
# 3. Configure environment (optional โ keys can also be entered in-app)
echo "VITE_GEMINI_API_KEY=your_gemini_key_here" > .env
echo "VITE_GOOGLE_MAPS_KEY=your_maps_key_here" >> .env
# 4. Start development server
pnpm dev
# โ http://localhost:5173/๐ฆ Environment Variables Reference
| Variable | Required | Description |
|---|---|---|
VITE_GEMINI_API_KEY |
Optional | Google Gemini API key (can enter in-app) |
VITE_GOOGLE_MAPS_KEY |
Optional | Google Maps JavaScript API key |
Note: Both keys can be entered directly in the UI. They're stored only in browser memory โ never sent to any backend.
๐๏ธ Click to expand full project tree
trana-ai/
โโโ ๐ index.html # Entry HTML with SEO meta tags
โโโ ๐ฆ package.json # Dependencies & scripts
โโโ โ๏ธ tsconfig.json # TypeScript configuration
โโโ src/
โโโ ๐ main.jsx # React DOM mount point
โโโ ๐ App.jsx # Root router & layout orchestrator
โโโ ๐จ index.css # Global styles, animations, dark theme
โ
โโโ pages/
โ โโโ ๐ Landing.jsx # Cinematic landing with count-up animations
โ โโโ ๐บ๏ธ CommandCenter.jsx # Main 3-column operations dashboard
โ โโโ ๐ฎ PredictPage.jsx # 72-hour AI prediction module
โ โโโ ๐ง AIPriority.jsx # Priority engine + Gemini analysis
โ โโโ โก Simulate.jsx # What-if simulation engine
โ โโโ ๐ฅ Personnel.jsx # Volunteer directory & smart matching
โ โโโ ๐ ReportIncident.jsx # New incident reporting form
โ
โโโ components/
โ โโโ ๐บ๏ธ GoogleIndiaMap.jsx # Google Maps with zone markers & polylines
โ โโโ ๐ฎ๐ณ IndiaMap.jsx # SVG fallback map of India
โ โโโ ๐ Sidebar.jsx # Navigation sidebar
โ โโโ ๐ข AlertTicker.jsx # Scrolling crisis alert banner
โ โโโ ๐๏ธ VoiceCommand.jsx # Speech recognition interface
โ โโโ ๐ ZoneDetailCard.jsx # Zone detail panel with metrics
โ โโโ ๐ฅ WowFeatures.jsx # Crisis mode, impact panel, AI thinking
โ
โโโ store/
โ โโโ ๐๏ธ index.js # Zustand store
โ
โโโ services/
โ โโโ ๐ฆ๏ธ predictionService.ts # Open-Meteo + USGS data fetching
โ โโโ ๐ค geminiPrediction.ts # Gemini prediction briefing generation
โ
โโโ utils/
โ โโโ ๐ฌ gemini.js # Gemini API client & prompt builder
โ โโโ โ๏ธ riskScorer.ts # Multi-hazard risk calculation engine
โ โโโ ๐ง helpers.js # Utility functions
โ
โโโ data/
โโโ ๐ zones.js # 30 disaster zones across India + GeoJSON
โโโ ๐ค personnel.js # Volunteer data generator
Step 1 โ Landing Click "Launch Dashboard" for cinematic entry
Step 2 โ Command Center Click "Run AI Allocation" โ deployment lines on map
Step 3 โ Command Center Click a zone โ drone telemetry overlay activates
Step 4 โ Command Center Click "Replay Crisis" โ state history playback
Step 5 โ AI Priority Enter Gemini key โ Run Analysis โ watch thinking + typewriter
Step 6 โ AI Priority "Ask Gemini": "Which zone needs medical teams urgently?"
Step 7 โ Prediction View 72-hr forecast โ click a city for risk breakdown
Step 8 โ Simulation Set severity +3, volunteer drop 40% โ run โ see impact
Step 9 โ Personnel Register volunteer: "doctor with boat" โ Smart Deploy Match
Step 10 โ Report Incident Submit new zone โ watch it appear live on the map
Step 11 โ Voice Click mic โ say "Run AI" โ watch allocation execute
๐ Click for deployment options
pnpm build
npm install -g netlify-cli
netlify login
netlify deploy --prod --dir=dist| Setting | Value |
|---|---|
| Build command | pnpm build |
| Publish directory | dist |
| Node version | 18+ |
VITE_GEMINI_API_KEY |
Your Gemini API key |
VITE_GOOGLE_MAPS_KEY |
Your Google Maps key |
![]() |
![]() |
![]() |
![]() |
|---|---|---|---|
| UTKARSHH20 | utkarshxdsc | Rishal2324 | Samar-Saifi |
| Frontend & UI/UX | AI/ML & Gemini Integration | Backend & Data Pipeline | Maps & Visualization |
- ๐ Backend persistence (Firebase/Supabase)
- ๐ค Real-time multi-user collaboration (WebSocket)
- ๐ฑ Mobile-responsive PWA with offline-first mode
- ๐๏ธ Multi-Language Voice Assistant (Hindi, Tamil, Telugu, Bengali)
- ๐ฅ Hospital & Blood Bank live integration
- ๐ฐ๏ธ IMD (India Meteorological Department) API integration
- ๐ Drone & IoT sensor data ingestion
- ๐ Post-disaster recovery tracker module
- ๐ Gamified volunteer engagement system
- ๐ NDMA official API integration
This project is built for Google Solution Challenge 2026 and is available under the MIT License.
Powered by Google Gemini ยท Google Maps ยท Open-Meteo ยท USGS
เคคเฅเคฐเคพเคฃ โ Rescue. Deliver. Protect.



