This is a submission for the Hacktoberfest Open-Source AI Challenge Week 1: Touch Grass
What I Built
AeroVision is an AI-powered air quality app that answers one question before you walk out the door: is it actually safe to be outside right now?
It has two parts:
- An AQI predictor trained on 5+ years of pollution data from 26 Indian cities (29,531 records). Give it pollutant concentrations (PM2.5, PM10, NO2, CO, etc.) and it predicts the Air Quality Index and health category using four different ML models (Random Forest, XGBoost, Gradient Boosting, Extra Trees) side by side.
- A live AQI view β the part that actually gets you outside. Search any city (or use your current location), and it pulls real-time pollutant data, runs it through the trained model, and shows you the current AQI, a 24-hour forecast, and current weather β so you can decide when in the next day is actually the best window to go for a run, walk the dog, or just open the windows.
It's for anyone living somewhere air quality swings hard day to day β which, if you've spent time in Delhi, Ahmedabad, or Patna during peak pollution season, is most of India. Instead of guessing from haze outside your window, you get a number and an actual forecast window.
Demo
Code
Pager-dot
/
AeroVision
AI-Powered Air Quality Index Prediction & Monitoring System
AeroVision - AI-Powered Air Quality Prediction & Monitoring System
A machine learning web application that predicts Air Quality Index (AQI) from pollutant concentrations and provides interactive dashboards to monitor air pollution trends across 26 Indian cities.
Built with Flask, scikit-learn, XGBoost, Bootstrap 5, and Chart.js.
Table of Contents
- Problem Statement
- What is AQI?
- Dataset
- Pollutants Explained
- ML Pipeline
- Project Structure
- How to Run
- Features
- Key Findings
- Technologies Used
Problem Statement
Air pollution is one of the most critical environmental challenges in India. Cities like Delhi, Ahmedabad, and Patna frequently experience hazardous pollution levels, directly impacting public health.
Goal: Build a system that can:
- Predict the AQI value given pollutant concentrations (PM2.5, NO2, CO, etc.)
- Classify the predicted AQI intoβ¦
How I Built It
AeroVision is built around open-source ML, not a closed API:
- scikit-learn (Random Forest, Extra Trees, Gradient Boosting) and XGBoost for the actual AQI prediction β all trained locally on an open dataset (Kaggle's Air Quality Data in India), with the full pipeline (cleaning, IQR outlier removal, StandardScaler, train/test split) transparent and reproducible in train_model.py.
- Flask serves the models and the live view.
- For live readings, I use OpenWeatherMap's free Air Pollution API to get real pollutant concentrations for any city, then feed those straight into the same trained model β so live, real-world air quality gets scored on the same scale as the historical dataset, not just OpenWeather's own 1-5 index. The app shows both side by side.
The model itself has no dependency on any proprietary AI service β the entire prediction pipeline is open-source, inspectable, and retrainable by anyone who clones the repo.
Why Does Open Innovation Matter?
Because this is a public-health tool, not a toy. If the model were hidden behind a closed API, nobody could check why it predicted what it predicted, retrain it on their own city's data, or catch bias in it (e.g. is it systematically off for cities with sparse data?). Open tooling means:
- Anyone can see exactly how AQI is derived from raw pollutants (train_model.py is the whole pipeline, no black box).
- Anyone can swap in their own country's dataset and retrain β this doesn't have to be India-only.
- No API cost or rate-limit wall stands between someone and a decision that affects their health today.
Top comments (0)