Inspiration SafeNav was inspired by the everyday problem of getting across campus safely at night. A normal navigation app optimizes for distance or time, but students often think about lighting, visibility, crowds, blocked paths, and whether a route feels safe. We wanted to build a system that treats safety as a live routing signal instead of an afterthought.

What It Does SafeNav helps students find a safer route to the dorms by combining campus map data with camera-based environmental analysis. Users can upload videos, simulate camera locations around campus, describe where footage was filmed, and see how changing conditions affect the safest path.

The app models campus as a weighted graph:

route cost

distance + λ ⋅ risk route cost=distance+λ⋅risk where $\lambda$ controls how strongly SafeNav prioritizes safety over shortest distance.

How We Built It We built SafeNav with a React and TypeScript frontend, a FastAPI backend, and a graph-based routing engine. The frontend provides the campus map, simulation mode, video upload flow, route controls, and risk dashboard.

On the backend, SafeNav stores campus locations as graph nodes and paths as weighted edges. It uses Dijkstra and A* search to compute routes while factoring in dynamic risk. Uploaded videos are processed through a SLAM-lite and perception pipeline that estimates visual confidence, lighting, visibility, obstruction, and other safety-related features.

Challenges One major challenge was connecting visual input to routing in a way that felt understandable. Instead of just showing a black-box score, we exposed safety metrics, route explanations, map confidence, and reroute behavior.

Another challenge was making simulation mode useful for a hackathon demo. We added a larger upload window where students can upload one video at a time, describe where it was filmed, and let SafeNav update the route to the dorms based on that location.

What We Learned We learned how routing, perception, and user experience have to work together. A safer navigation tool needs more than an algorithm; it needs a clear interface that helps users understand why a route changed.

We also learned how to model real-world uncertainty. Camera footage may be blurry, dark, or incomplete, so SafeNav treats visual confidence as part of the safety calculation instead of assuming every input is perfect.

What’s Next Next, we would like to add real-time camera feeds, better object and lighting detection, user-reported safety updates, and more detailed campus map calibration. We also want to improve the route planner so it can personalize safety preferences for each student

Built With

  • a*
  • analysis
  • and
  • built-with-react-and-typescript-for-the-frontend-vite-for-frontend-development-and-builds-fastapi-for-the-backend-api-python-for-routing
  • campus
  • control
  • dijkstra
  • extraction
  • feature
  • for
  • github
  • graph
  • html/css
  • interactive
  • map
  • opencv
  • overlays
  • perception
  • planning
  • processing
  • project
  • risk-aware
  • risk-scoring
  • route
  • simulation
  • slam-lite
  • svg
  • the
  • ui
  • version
  • video/frame
  • visual
  • visualization
  • workflow
Share this project:

Updates