| title | EcoNav AI |
|---|---|
| emoji | 🌍 |
| colorFrom | green |
| colorTo | blue |
| sdk | docker |
| app_port | 7860 |
| pinned | true |
EcoNav AI is an intelligent routing platform and Reinforcement Learning (RL) environment built for the Meta AI Environmental Decision Intelligence Hackathon. It empowers users and agents to navigate urban networks while minimizing pollution exposure and maximizing health "Exposure Credits."
EcoNav AI transforms navigation from a simple distance-minimization problem into a multi-objective environmental optimization task. By integrating real-time Air Quality Index (AQI) data with dynamic traffic simulations, the platform provides a realistic testing ground for eco-aware agents.
- Live AQI Integration: Real-time pollution data fetched from the Open-Meteo API for 50+ network nodes across India.
- Exposure Credits: A gamified health currency that penalizes high-pollution segments (Grade F) and rewards clean-air segments (Grade A).
- Dynamic Traffic Engine: Simulates congestion levels that impact both travel time and localized pollution exposure.
- OpenEnv Compliance: Fully compatible with the OpenEnv specification for RL evaluation and agent deployment.
The project is architected as a modern monorepo for seamless development and deployment.
- Backend: Python 3.10+, FastAPI, Uvicorn, Pydantic, Torch (ML scoring).
- Frontend: Vite, Vanilla JS, CSS3 (Glassmorphism), Leaflet.js (Mapping), Chart.js (Analytics).
- Infrastructure: Docker, Turbo (Build system), GitHub Actions (CI/CD).
- Quality: Ruff (Linting), Prettier (Formatting).
EcoNav-AI/
├── apps/
│ ├── backend/ # FastAPI server, AI services, and RL endpoints
│ ├── frontend/ # Vite-powered dashboard and mapping interface
│ ├── simulator/ # ML training and evaluation logic
├── packages/
│ ├── env_core/ # Shared RL environment logic (OpenEnv Spec)
│ ├── exposure-engine/ # Pollution exposure calculation primitives
│ └── agent-engine/ # Baseline agent policies and LLM integration
├── requirements/ # Modularized dependency lists
├── server/ # Production entry points for Docker/HF Spaces
├── turbo.json # Monorepo configuration
└── inference.py # Baseline agent evaluation script (Compliance optimized)
- Node.js: >= 18.0.0
- Python: >= 3.10
- npm: >= 11.11.0
-
Clone the repository:
git clone https://github.com/hitendras510/EcoNav-AI.git cd EcoNav-AI -
Install Dependencies:
npm install # Installs monorepo build tools pip install -r requirements/backend.txt # Installs Python backend deps
-
Run Dev Environment: Use the Turbo-powered development command to start both the backend and frontend:
npm run dev
- Backend:
python server/app.py(Runs on http://localhost:7860) - Frontend:
npm run dev --prefix apps/frontend(Runs on http://localhost:5173)
The environment supports four standard evaluation tasks of increasing complexity:
easy_route: Delhi to Kolkata (15 steps).medium_route: Delhi to Kolkata (8 steps).hard_pollution_dodge: Agra to Kolkata (6 steps).expert_credit_max: Maximize credits while reaching the goal (10 steps).
Running Baseline Evaluation:
The inference.py script is optimized for OpenEnv compliance, featuring structured logging ([START], [STEP], [END]) and LLM agent support.
export ENV_URL="http://localhost:7860"
export HF_TOKEN="your_huggingface_token"
python inference.pyWe maintain high code quality standards through automated linting and formatting.
- Linting (Python):
ruff check . - Fix Linting:
ruff check --fix . - Formatting (JS/TS/MD):
npm run format
| Check | Status |
|---|---|
| CI/CD Pipeline | Passing ✅ |
| OpenEnv Spec | Compliant (v1.0) 🟢 |
| Real-time Data | Active (Open-Meteo) 🛰️ |
| Model Version | EcoScorer v2.1 🧠 |
Distributed under the MIT License. See LICENSE for more information.