Inspiration

Getting active is a step toward better health. But outdoor exercise brings challenges that motivation alone cannot solve. A walker faces rising heat with little shade. A runner needs water with nowhere nearby to refill. A cyclist gets caught in heavy rain. We wanted to help people recognize these concerns and adjust their activity around their wellbeing.

We built respite to connect environmental guidance with practical support: choosing suitable conditions, remembering hydration breaks, finding facilities, and shortening an activity when needed.

What it does

respite helps walkers, runners, and cyclists make informed choices about their wellbeing before and during outdoor activity.

Activity-specific route recommendations: Plan a round trip near a target distance or a one-way journey. Compare routes with explanations based on available weather, estimated shade, air quality, and mapped stair avoidance.

Smart Departure: Explore hourly departure windows across the next 24 hours. respite considers estimated activity duration alongside temperature, rain, UV, air quality, and wind to highlight a suitable forecast window.

Environmental guidance: View feels-like temperature, humidity, UV, wind, and air quality with clear interpretations. Forecast checks along candidate routes flag concerning conditions and can withhold suggestions when the app’s thresholds are exceeded.

Shade and ground highlights: See estimated low-shade sections and potential wet or soft-ground concerns on the map. These use OpenStreetMap observations and recent-rain information to help users anticipate exposure and terrain concerns.

Hydration reminders with an action: Choose an active-time reminder interval, with hot-weather messaging based on available feels-like temperature. Reminders pause with the activity and offer Dismiss, a five-minute Snooze, or Find water.

Fountain and bathroom detours: Find mapped facilities near the route and inspect available access and opening details. Preview the additional routed distance and time before confirming a stop that continues toward the activity’s existing goal.

Finish Early and shelter: Request the shortest-duration available return to the original start, search nearby indoor places or covered shelters, or end the session. Shelter routes require confirmation, and the original start remains saved for a later return.

Support for mobility needs: Avoid stairs requests routes excluding mapped steps for people with mobility disabilities, injuries, or difficulty using stairs. Incomplete map coverage means full step-free or wheelchair accessibility is not guaranteed.

Tracking and personal preferences: Track elapsed active time and real GPS distance, pause and resume, switch between metric and imperial units, and hide facility or hazard graphics to reduce map clutter.

How we built it

  1. We used React Native and Expo for phone and web, with React Native Maps and Leaflet for mapping. OSRM-compatible services and openrouteservice provide routing, while OpenStreetMap and Overpass supply mapped facilities and environmental observations.
  2. Open-Meteo supplies weather and air-quality information. Built-in rules rank routes, with optional Gemini ranking and explanations. Expo Location supports foreground tracking, and AsyncStorage saves preferences.
  3. A labeled demo mode simulates movement and accelerates reminders without adding simulated distance to real tracking.

Challenges we ran into

Combining different data sources. Routing, weather, air quality, and mapped facilities came from separate services with different coverage and availability. We had to handle missing information and failed requests while making it clear which values were estimates or unknown.

Keeping an activity consistent when plans change. Adding a fountain stop, choosing shelter, or returning early changes navigation without starting a new activity. We had to preserve the original starting point, timer, and recorded distance through these changes. Canceling a preview or encountering a routing failure also needed to leave the current route intact.

Getting GPS and arrival behavior right. Early testing marked a stationary user near the start as having arrived home. We refined arrival checks, filtered GPS jitter, and separated simulated movement from real tracking so the demo would not produce misleading activity summaries.

Integrating our team’s work. We developed maps, weather, accessibility, and activity features in parallel, often editing the same files. Resolving merge conflicts required preserving each feature and retesting the complete flow. Phone testing also revealed scrolling, gesture, and layout issues that were less obvious on the web.

Accomplishments that we're proud of

We are particularly proud of confirmed detours and destination switching. Users remain in control of navigation changes, and the original starting point stays available even after choosing a shelter. Our demo mode lets us demonstrate these behaviors without physically traveling, while keeping simulated movement out of recorded distance. Automated checks and real-phone testing helped us improve routing, timers, preferences, and session behavior. We’re also proud of respite’s range of uses, from college students walking across campus to runners and cyclists exploring a city. Inclusivity matters to us: the Avoid stairs preference considers people with mobility disabilities, injuries, or difficulty using stairs. We hope to support more people in staying active while making room for their individual needs.

What we learned

We gained experience combining mapping, routing, weather services, and GPS tracking in a React Native app. Keeping an activity consistent through pauses, detours, and destination changes taught us the importance of careful state management and testing on real devices.

Working in parallel taught us how to collaborate through GitHub branches, resolve merge conflicts, and test our features together. We also learned to communicate uncertainty clearly: forecasts and map data can support decisions, but they cannot verify every condition a user will encounter.

What's next for respite

Our next priorities are adding background hydration reminders, improving reliability with limited connectivity, and providing clearer facility and shelter availability information. We would love to explore an integration with Strava, bringing respite’s environmental guidance and break support into the activity routines people already use. Potential features include importing planned routes, reviewing environmental conditions before an outing, and sharing completed activity summaries. We also plan to test with walkers, runners, cyclists, and people with mobility disabilities to improve usability and expand accessibility support. Input from relevant specialists would help us evaluate our environmental thresholds and hydration messaging.

Share this project:

Updates

Submission history