Inspiration

Walking home alone at night shouldn't feel like a risk you have to accept. Whether it's a late shift, an unfamiliar neighborhood, or just that uneasy feeling after leaving a party, millions of people navigate personal safety concerns every day often alone and without a reliable way to signal for help. We wanted to build something that felt like having a watchful presence with you: not intrusive, not paranoid, just there. That idea became Overwatch an autonomous drone escort experience in your pocket.

What it does

Overwatch is a mobile security escort app built with React Native and Expo. After signing in anonymously, users grant GPS access and are dropped into a live map of their surroundings. From there, they can request an escort by setting a pickup and dropoff location either by typing an address or placing pins directly on the map. Once a trip is confirmed, Overwatch creates a live escort session and launches a real-time tracking screen that displays:

  • The user's current GPS position
  • A simulated autonomous drone shadowing their route
  • A walking path to the destination (powered by Google Directions)
  • Live status updates and ETA
  • A one-tap emergency flag for immediate escalation
  • A clean trip summary once the escort ends

A Safety Settings screen lets users configure preferences before heading out.

How we built it

Overwatch is built on Expo Router for file based navigation and React Native Maps for the live map interface. We used Firebase Anonymous Auth so users can get protected instantly no account creation friction. Escort sessions are stored and synced in real time through Firestore (escortRequests collection), giving us a lightweight but scalable backend with no custom server to maintain.

Google Maps APIs handle the geospatial heavy lifting: Places-style autocomplete for address search, the Directions API for walking routes, and reverse geocoding to surface human-readable location names. Drone movement is simulated client-side by interpolating between GPS waypoints, creating a believable autonomous escort effect without real hardware. The whole stack is written in TypeScript for type safety across navigation, Firestore models, and API responses.

Challenges we ran into

Keeping map state, Firestore listeners, and real-time GPS updates synchronized without causing re-render storms was one of our biggest technical hurdles. React Native Maps required careful handling of region updates to avoid jitter during live tracking. We also had to gracefully degrade features when the Google Maps API key wasn't configured building fallback flows for autocomplete and directions so the core escort experience still worked. Managing anonymous auth sessions across app restarts while preserving escort session continuity in Firestore took more edge-case thinking than expected.

Accomplishments that we're proud of

We're proud of how cohesive the end to end flow feels from a cold launch to a live escort session in under a minute, with no account required. The real-time tracking screen in particular came together well: layering user position, simulated drone movement, and a walking polyline on a single map while keeping the UI calm and readable was a design and engineering challenge we're happy with. Building a safety critical concept responsibly with anonymous auth, no stored PII, and an emergency flag also felt meaningful.

What we learned

This project deepened our understanding of real time mobile architecture: how to structure Firestore listeners that don't leak, how to handle GPS permission flows across iOS and Android gracefully, and how to compose multiple async data sources (location, Firestore, Directions API) into a single coherent UI state. We also learned a lot about the UX of safety tools clarity and speed matter more than features when someone is stressed or in a hurry.

What's next for Overwatch

The natural next step is connecting Overwatch to real infrastructure integrating with campus security dispatch systems, verified trusted contacts who can monitor a trip remotely, or actual drone/camera networks in smart city environments. We'd also like to add push notifications for trip status changes, a history of past escorts, and a community safety layer that surfaces crowd-sourced incident reports along common routes. Longer term, we see Overwatch as a platform: a safety layer that any city, campus, or event venue could deploy on top of.

Share this project:

Updates