Inspiration

Delhi experiences severe air pollution, but raw pollution data is difficult for the public to understand.

What it does

Delhi Understands is an interactive air quality analytics and public health dashboard that helps users better understand pollution trends in Delhi. Instead of presenting raw pollution numbers, it transforms environmental data into meaningful health insights.

Users can:

Monitor key air pollutants such as PM2.5, PM10, NO₂, SO₂, O₃, CO, and NH₃. Filter pollution data by pollutant and custom date range. View dynamic KPIs including average pollution levels, peak values, and total records. Analyze monthly pollution trends through interactive visualizations. Receive air quality status and health recommendations based on PM2.5 levels.

The goal is to make air quality information more understandable and actionable for everyone.

How we built it

The application was built using:

Python as the primary programming language. Streamlit for developing an interactive web dashboard. Elasticsearch for storing, indexing, filtering, and aggregating air quality data efficiently. Pandas for data processing and visualization. A structured service-based architecture to separate analytics, health recommendation logic, and presentation layers.

We indexed nearly 19,000 Delhi air quality records into Elasticsearch and used aggregations and range queries to power real-time analytics.

Challenges we ran into

Some of the key challenges included:

Designing efficient Elasticsearch aggregation queries for monthly pollutant trends. Implementing dynamic date range filtering while maintaining fast query performance. Handling Elasticsearch date formats and range query parsing. Refactoring the application into modular services without breaking existing functionality. Ensuring that dashboard metrics, charts, and health recommendations remained synchronized when filters changed.

Accomplishments that we're proud of

Successfully integrated Elasticsearch as the analytics engine. Built a fully interactive dashboard with dynamic pollutant and date filtering. Implemented real-time KPI calculations using Elasticsearch aggregations. Created an intuitive public health companion that converts pollution data into understandable health guidance. Designed a clean and responsive dashboard suitable for both technical and non-technical users.

What we learned

Throughout the project we learned:

How Elasticsearch can power fast analytical dashboards beyond traditional search use cases. Designing efficient aggregation and filtering queries for time-series environmental data. Building modular Python applications with clear separation between business logic and UI. Creating dashboards that prioritize user understanding rather than simply displaying data. The importance of connecting environmental analytics with practical public health recommendations.

What's next for Delhi Understands

We plan to expand Delhi Understands into a comprehensive environmental intelligence platform by adding:

🤖 AI-powered chatbot for answering air quality and health-related questions. 📍 Location-wise pollution analysis across different areas of Delhi. 🔔 Personalized pollution alerts and health notifications. 📈 Pollution forecasting using machine learning models. 🏃 Activity recommendations based on predicted air quality. 🌍 Integration with live AQI APIs for real-time monitoring. 📱 Mobile-friendly deployment for wider accessibility.

Our long-term vision is to help citizens make informed daily decisions based on environmental conditions while promoting greater awareness of urban air quality and public health.

Built With

Share this project:

Updates

Submission history