Inspiration
Most people would volunteer. They just never find out where. The work exists and the people exist, but what connects them sits scattered across group chats and org emails.
Meanwhile Florida is in its worst dengue outbreak in decades: 152 locally acquired cases in 2026 and the state's first dengue death this month. There's no antiviral cure and the vaccine isn't for most people, so prevention rests on removing standing water. That's rare in public health — the intervention is something ordinary people with buckets can do. NASA's GLOBE Observer volunteers already map exactly where that water sits. Nothing connected the data to the people.
What it does
Rally puts located problems and the people who'll fix them on one map.
Residents drop a pin, pick what's wrong, write one line. Ten seconds, no account.
Organizers filter by issue type, see where reports cluster, and convert any pin into a volunteer event with the location and supplies already carried over.
Anyone nearby signs up with name, email, and how many people they're bringing — so one org officer can commit twelve people in a single action. Publishing generates a shareable flyer and posts it to a public board.
How we built it
A Jupyter notebook loads raw GLOBE Observer Mosquito Habitat Mapper records, cleans them, filters to a region, scores priority, and exports JSON the front end reads directly.
Cleaning follows three stated rules: drop records with no coordinates, drop coordinates outside valid ranges, and keep records where the larvae count is blank. A blank means the observer didn't sample, not that the site is clear — coercing it to zero would understate risk.
Priority is one transparent rule, printed in the interface so anyone can audit it. High means larvae confirmed. Medium means standing water with no larvae found. Low means not observed in over a year.
The region is a single bounding box constant. Change four numbers and it runs for any community with GLOBE coverage.
Front end is self-contained HTML, CSS, and vanilla JS. No build step, no backend — a judge shouldn't need npm install to see it work.
EMERGE curriculum used: Textbook 1, Data Analysis — the lesson on cleaning and visualizing participatory science data. Built with pandas and folium.
Challenges we ran into
The cold start problem. Civic apps die on empty maps. Seeding with GLOBE Observer records solved it: Rally opens with real NASA-supported sites already pinned, each one a cleanup waiting to be organized.
Scoping. The first version stacked an info feed, volunteer organizing, and donations together. Cutting to one map with a type field on every pin kept the breadth without the build cost — a mosquito dashboard and a civic hub are the same data model.
Partial data. Species IDs and photos are optional in the GLOBE protocol and frequently missing, so the whole app is built on only five fields that are reliably there.
Not overclaiming. Alachua County isn't currently under a mosquito-borne illness alert, so this is framed as prevention. The outbreak counties show what happens when breeding sites go unmapped, and Gainesville has the same mosquitoes and the same summer rain.
Accomplishments that we're proud of
Solving the cold start problem with real data rather than fake seed content. The map is genuinely useful before the first user touches it.
Making the priority rule legible instead of clever. Anyone can read it, audit it, and disagree with it — which matters more than accuracy on a tool communities are supposed to trust.
Building it so it generalizes. One constant changes the region, which means this isn't a Gainesville project that happens to use NASA data. It's a template any community with GLOBE coverage can run.
What we learned
Blank is not zero. Volunteers do the required steps and skip the optional ones, so your cleaning rules determine what your map actually claims.
And the hard problem in civic tech isn't the software, it's the empty map. Borrowing an open dataset as a seed layer is a general answer to that, not just a mosquito one.
What's next for Rally
A persistent backend so reports and signups survive a refresh. A cluster view so organizers can spot where problems concentrate over time. Landsat or Sentinel imagery layered in to show standing water change after rain events. Contributing the notebook back to EMERGE as a worked example for a new region. And a pilot with UF student orgs that have service hour requirements and nowhere to point them.
Data obtained from NASA and the GLOBE Program, freely available for use in research, publications and commercial applications. Downloaded from https://www.globe.gov/globe-data
Low, R., Boger, B., Nelson, P. and Kimura, M. (2021). GLOBE Mosquito Habitat Mapper Citizen Science Data. https://observer.globe.gov/get-data/mosquito-habitat-data
EMERGE: https://geoemerge.com
Built With
- css-modules
- geolocation-api
- google-oauth
- javascript
- maplibre-gl
- nasa
- nasa-globe-observer
- next.js
- node.js
- oauth2
- openfreemap
- openstreetmap
- postgresql
- react
- rest-api
- row-level-security
- supabase
- svg
- vercel
Log in or sign up for Devpost to join the conversation.