Inspiration

Buffalo’s lake-effect winters can isolate older adults, so we built a campus-led volunteer network that shows who needs help, where, and why in real time.

What it does

Elders submit assistance requests that remain visible until completed. Volunteers authenticate with a .edu email, share their location, and get a live-ranked map of nearby tasks they can claim and finish.

How we built it

We combined a FastAPI + SQLAlchemy backend (OTP email auth, geocoding cache, request lifecycle management) with a Vite + React + Leaflet frontend that consumes JWT-protected endpoints via axios.

Challenges we ran into

Protecting privacy while keeping data useful meant anonymizing map coordinates but still computing distances.
SQLite concurrency issues forced compare-and-set claim logic.
Unreliable indoor geolocation required address fallback plus caching to respect Nominatim limits.

Accomplishments that we're proud of

We shipped a full elder–volunteer workflow from request creation through admin overrides, a live map that refreshes and prevents duplicate claims, and modular services ready for richer weather-based prioritization.

What we learned

Enforcing role constraints early simplifies moderation.
Blending urgency, distance, and weather produces better volunteer decisions.
Async HTTP with caching is essential for dependable civic integrations.

What's next for Buffalo to the Rescue

Integrate real NOAA/OpenWeather severity data, add SMS updates and volunteer shift planning, and expand analytics and exports so city partners can focus on underserved neighborhoods.

Share this project:

Updates

Submission history