Inspiration
I grew up in Prayagraj, Uttar Pradesh — one of the most densely populated cities in India, and one of the most environmentally stressed. Every morning I would wake up unsure whether the air outside was safe to breathe. There was no single place to check AQI, water quality, UV index, and get real environmental education at the same time. Weather apps told me the temperature. News apps told me about disasters after they happened. But nothing told me about the environment I was actually living inside.
The bigger picture made it worse. 14 of the world's 20 most polluted cities are in India. The Ganga — a river sacred to a billion people — fails bathing water standards in 47% of monitored stretches. One million species are threatened with extinction. Seven million people die from air pollution every year. And yet most people in India have no real-time access to environmental data that affects their daily lives.
What it does
Likeworld is India's most comprehensive environmental intelligence platform — a single Android app that gives every person real-time access to the environmental data that affects their life, combined with deep education, AI assistance, and personal impact tracking.
The app has 21 features across 4 sections:
Real-time data: Live AQI from WAQI's global network of 10,000+ monitoring stations. 7-day weather forecast. UV Index. Water quality with USGS river monitoring. Soil quality from SoilGrids (ISRIC). Earthquake alerts from USGS. Green spaces map using OpenStreetMap. Sunrise, golden hour, and day phase tracker calculated from GPS coordinates.
Education: 15 deep-dive topics on climate, biodiversity, pollution, and sustainability. Animal encyclopedia with 17 endangered species including the Vaquita (fewer than 10 remaining), Amur Leopard, and Axolotl. River encyclopedia covering 15 of the world's major rivers with ecological data. Seeds and plants library of 15 species including sacred Indian plants. Tribal knowledge covering 18 Indigenous cultures from the Hadza to the Dongria Kondh. Eco news feed with 20 curated global stories updated regularly.
Interactive tools: Eco AI chatbot powered by Gemini 1.5 Flash. Live noise pollution meter using the phone microphone. Eco Calculator for carbon footprint. Eco Quiz with 10 questions. Eco Journal for personal environmental logging. Species of the Day with 7 rotating endangered animals. Climate Timeline showing global temperature data from 1880 to 2024. 6 campaign pages for soil, water, animals, oceans, air, and tribal rights.
Personal impact: Lifetime impact tracking across 10 metrics. 11 achievement badges from Seed to Eco Legend. Nationality-aware personalisation — the app adapts its content based on the user's country, showing region-specific environmental challenges. Smart daily reminders with 4 context-aware notifications based on real AQI data, season, and user behaviour.
How we built it
Likeworld is built entirely in Java for Android using an MVVM architecture with ViewBinding, LiveData, and Repository pattern. The UI uses Material Design components with a custom dark theme centred on deep navy (#060D14) and brand green (#00E57B).
Data layer: Retrofit handles all HTTP networking across 6 singleton clients. The primary AQI source is the WAQI API with OpenWeatherMap as fallback and realistic Indian city defaults as the final fallback. Weather and UV come from Open-Meteo (no API key required). Soil data comes from SoilGrids REST API (ISRIC). Earthquake data from USGS GeoJSON feed. Reverse geocoding and green spaces from Nominatim and OSM Overpass API.
Maps and visualisations: All interactive maps are built with Leaflet.js running inside Android WebViews. Charts (Climate Timeline, AQI trend) use Chart.js. The soil and water quality portals use a hybrid architecture — a compact 240px Leaflet map on top with a scrollable native-style data panel below, built entirely in HTML/CSS/JS injected as a data URL.
AI: The Eco chatbot uses Gemini 1.5 Flash via the Google AI Studio API, with full conversation history maintained in JavaScript and streamed into the WebView.
Backend: Firebase Authentication with email verification. Cloud Firestore for favourited articles. SharedPreferences for local impact tracking, user profile (nationality, gender, bio), and reminder state.
Notifications: AlarmManager with a custom BroadcastReceiver schedules 4 daily smart reminders. Content adapts based on stored AQI, season, current eco level, and user behaviour — a morning reminder at 07:00, midday UV warning at 12:00, evening journal nudge at 19:00, and streak reminder at 22:00. A BootReceiver re-registers alarms after device restart.
Noise meter: Uses Android's MediaRecorder with AudioSource.MIC, sampling getMaxAmplitude() every 250ms and converting to decibels via 20×log10(amplitude). Six noise categories from Whisper Quiet to Dangerous are displayed with a live colour-coded progress bar.
Sunrise calculator: Implements the NOAA solar position algorithm in pure Java — no API needed. Calculates sunrise, sunset, golden hour, and current day phase from GPS coordinates and day of year, updating every minute.
Challenges we ran into
AQI data reliability in India: Official Indian monitoring stations have frequent data gaps and API outages. We built a three-tier fallback system — WAQI geo-coordinates → OpenWeatherMap Air Pollution API → realistic city defaults based on historical averages for 15 major Indian cities. Getting fresh GPS coordinates was also a challenge — Android's getLastLocation() frequently returns stale or null data in densely built areas. We switched to requestLocationUpdates() with setMaxUpdates(1) and PRIORITY_HIGH_ACCURACY to force a fresh GPS fix on every home screen load.
WebView scroll conflicts: The sliding chatbot panel was originally implemented as a DrawerLayout inside the home fragment. This caused the DrawerLayout to intercept all vertical scroll touches, making the home feed completely unscrollable. We solved this by removing DrawerLayout from XML entirely and adding the chatbot panel programmatically to the Activity's root FrameLayout, completely outside the scroll hierarchy.
Duplicate resources error: When integrating the custom logo, Android's resource merger found both .xml vector versions and .png raster versions of the same drawable names (ic_logo, ic_notification, ic_launcher_foreground) in the same folder. The merger treats them as the same resource with conflicting definitions. Resolved by ensuring only one file format exists per resource name.
SoilGrids API response parsing: The SoilGrids v2.0 API returns pH values multiplied by 10 and organic carbon multiplied by 10 as integers. Displaying raw values showed pH as 62 instead of 6.2. Required careful unit conversion for all soil properties.
Accomplishments that we're proud of
Zero cost to users, zero cost to run: Every single data source in Likeworld is free — WAQI, Open-Meteo, SoilGrids, USGS, OSM, Nominatim. The entire app runs without any paid API subscription. Environmental intelligence should not be a luxury.
The tribal knowledge section: Documenting 18 Indigenous cultures — from the Jarawa of the Andamans (60,000 years on the island) to the Hadza of Tanzania (last true hunter-gatherers) to the Dongria Kondh who won a Supreme Court case against Vedanta mining — in a single mobile app. This content does not exist anywhere else in this format for a general Indian audience.
Nationality-aware personalisation: The app detects the user's nationality at registration and adapts its home screen content, environmental headlines, and AQI context for 14 countries. An Indian user sees the Ganga pollution crisis. A Chinese user sees industrial smog data. A Brazilian user sees Amazon deforestation figures. This makes the app feel personal rather than generic.
Live noise pollution meter: Using only the phone's built-in microphone and zero external APIs, the app measures real-time decibels and classifies the environment from Whisper Quiet to Dangerous. This feature works completely offline and is unique among environmental apps.
What we learned
Data availability is the hardest problem in environmental apps. It is easy to build a beautiful UI. It is very hard to get reliable, real-time environmental data — especially outside the US and Europe. India has monitoring stations but they go offline. Africa has almost no public water quality data. This forced us to build graceful fallback systems and be honest with users about data sources and their limitations.
WebView hybrid architecture is powerful but fragile. Building complex interactive features in HTML/JS inside Android WebViews gives you enormous flexibility — you can use any JavaScript library (Leaflet, Chart.js, D3) without adding Android dependencies. But the boundary between Java and JavaScript is a constant source of bugs. JavascriptInterface threading issues, WebView lifecycle management, and scroll event conflicts all required careful handling.
The environmental crisis is hyperlocal. Global statistics are numbing. But telling a user in Prayagraj that their city's AQI is 178 — Unhealthy — right now, this morning, before they decide whether to send their child to school — that is actionable. The most important design lesson was to make every piece of data as specific and personal as possible.
Permissions are a UX problem. Every permission request is a moment of friction and distrust. We learned to request permissions only at the moment they are needed (microphone when the noise meter is tapped, location when AQI is loading) and to always explain why the permission is needed in plain language before asking.
What's next for Likworld
Satellite crop monitoring (KisanNetra integration): Phase 5 of development will integrate Planet Labs satellite imagery API to show NDVI (Normalized Difference Vegetation Index) data for agricultural land. This bridges Likeworld's environmental intelligence with direct utility for India's 150 million farming families — showing them crop health, drought stress, and soil moisture from space.
Government API integrations: Connect to India's eNAM agricultural marketplace, PM-Kisan beneficiary verification, and Bhulekh land records APIs. Make Likeworld a one-stop platform connecting Indian citizens with government environmental and agricultural services.
Community pollution reporting: A camera-based feature allowing users to photograph and geolocate illegal dumping, industrial pollution, and burning — uploading to a shared crowd-sourced map. Every citizen becomes an environmental monitor.
Galaxy Watch companion app: A Wear OS companion showing AQI, UV index, noise level, and eco streak directly on the wrist — built in Kotlin with Jetpack Compose for Wear OS and synced via the Wearable Data Layer API.
Likeworld Desktop (Electron): A Windows desktop application wrapping the full Likeworld experience for users who prefer a larger screen — targeting schools and environmental NGOs who want to display live AQI and climate data on classroom or office screens.
Offline mode: Cache the last 24 hours of AQI, weather, and educational content so the app remains fully functional in areas with poor connectivity — critical for rural India where Likeworld's data is most needed and internet access is least reliable.
DPIIT Startup India recognition: File for recognition under Startup India / DPIIT to access government grants, tax exemptions, and the National Startup Awards — which would fund the satellite data subscriptions and server infrastructure needed for Phase 5.
Log in or sign up for Devpost to join the conversation.