Beep
A personal safety app that suggests safer walking routes using crime data and machine learning.

Overview
Beep was built as an interdisciplinary student project at the British Columbia Institute of Technology by a team of four developers and four designers, with about three months to deliver an MVP for an end-of-term showcase. We tackled a common concern: many women and under-represented communities feel uneasy walking alone at night, but most safety apps don’t connect crime information with route guidance.
Beep lets users view incident patterns on a map, request a walking route that tries to avoid hotspots, and use quick safety tools like live location sharing and a one-tap emergency alert. I worked on the core path-planning flow, including crime data integration on the map, the safe-route service, and rendering routes and directions on the client.
Key Features
- Safe route guidance that avoids incident hotspots
- Crime mapping that highlights recent incidents
- Real-time location sharing with trusted contacts (via SMS)
- One-tap emergency alert
- Surroundings recording for quick photo capture
- Safe zones to find nearby public places for help
Tech Stack
Challenge
We had to pick a model that could turn historical incident patterns into a usable “risk signal” for routing, then find a hosting approach that could run the model reliably as an endpoint. On the mobile side, integrating Google Maps in React Native and converting waypoints into a proper walking route with readable directions took significant iteration. We also had to ship quickly as an eight-person team while learning a new mobile stack and balancing design feedback with scope.
Solution
For safe routing, I trained a supervised deep learning model (a simple feedforward neural network) to assign a relative risk score to coordinates based on historical incident patterns. When a user enters a start and destination, the service scores candidate points, selects lower-risk waypoints, and returns them to the app to guide the route away from hotspots when possible.
I deployed the routing logic as a serverless AWS Lambda endpoint so the phone could request waypoints without running heavy processing. On the client, we used Google Maps Directions in walking mode to convert the waypoints into a navigable route with turn-by-turn steps, relying on documentation and built-in map features to keep the experience stable for the demo.