Inspiration
AirAware was inspired by a simple but important problem: people often know the weather, but they do not always understand the environmental health conditions around them. In a city like Bangalore, air pollution, seasonal illness alerts, and mosquito-control activity can all affect daily life, especially for children, elderly family members, and people with respiratory sensitivity.
What it does
AirAware is a full-stack environmental and public health companion for Bangalore.
It helps users:
View locality-wise air quality across major Bangalore zones Track weather conditions such as temperature, humidity, wind, rain chance, and visibility Read health advisories related to air quality, dengue, and seasonal illness Check fogging schedules for different neighborhoods See trend analytics and compare localities over time Get plain-language summaries that explain current conditions in a human-friendly way The platform is designed to be informative and accessible, with a strong focus on clarity rather than medical recommendation.
How we built it
We built AirAware as a full-stack web application.
Frontend:
React with Vite Tailwind CSS for styling Recharts for analytics and time-series visualizations Lucide icons for UI clarity Backend:
Node.js with Express Axios for external API integration Custom polling and API hooks for live data updates Node-cache and middleware for caching and rate limiting Data and intelligence layers:
OpenWeather for live weather data CPCB-style AQI integration, with fallback handling when live access fails OpenAI for natural-language environmental summaries Rule-based summary fallback when AI is unavailable Elasticsearch Cloud for persistence and future analytics support We also redesigned the full client UI to make the experience more structured, modern, and easier to navigate, with dedicated views for the dashboard, locality atlas, analytics, and alerts.
Challenges we ran into
One major challenge was dealing with unreliable or restricted third-party APIs. Some integrations were not consistently available during testing:
The OpenAI key was configured, but the project hit quota limits The CPCB data source returned access issues, so live AQI could not always be fetched We had to make sure the product still felt complete even when upstream services failed Another challenge was balancing complexity with usability. Environmental data can become overwhelming very quickly, so we had to decide how to surface important information without making the interface feel technical or cluttered.
We also ran into frontend build and tooling issues during the redesign, especially around linting, CSS utilities, and getting the new design system to compile cleanly across the app.
Accomplishments that we're proud of
We are proud that AirAware is more than just a weather dashboard. It combines multiple public-interest signals into one practical system.
Highlights we are proud of:
A fully redesigned end-to-end UI with a much stronger UX Clean separation between dashboard, analytics, alerts, and locality exploration Graceful fallback handling when external APIs fail AI-generated summaries with safe rule-based backup behavior A scalable backend structure with caching, polling, and modular controllers Successful production build and verified route flow across the app Most importantly, we built something that feels useful for real people, not just technically impressive.
What we learned
We learned that building resilient products is just as important as building smart ones. External APIs can fail, quotas can run out, and live systems can become unreliable, so fallback logic and transparency matter a lot.
We also learned:
Good UX is not just visual polish; it is about helping users understand what is live, what is simulated, and what actions they can take AI features are strongest when they explain data clearly rather than overreaching Full-stack consistency matters: frontend design, backend response shape, and error handling all need to work together Shipping a polished experience requires repeated refinement, not just feature addition
What's next for AIrAware
Next, we want to make AirAware more real-time, more predictive, and more city-ready.
Planned next steps:
Restore full live AQI integration with a reliable government or sensor-based source Re-enable OpenAI summaries with working quota/billing and better prompt controls Add maps and geographic visualization for locality-based monitoring Introduce trend forecasting and anomaly alerts Add user personalization, such as favorite localities and daily briefings Expand health and civic intelligence layers beyond Bangalore Build admin and municipal views for operational monitoring The long-term vision for AIrAware is to become a trusted environmental intelligence companion that helps communities understand everyday health-related conditions in a clear, actionable way.
Built With
- api
- axios
- cloud
- cors
- css
- elasticsearch
- express-rate-limit
- express.js
- javascript
- lucide
- node-cache
- node-cron
- node.js
- openai
- openweather
- react
- recharts
- tailwind
- vite
Log in or sign up for Devpost to join the conversation.