SafeStep
Wheelchair-friendly walking routes for Seoul.
The problem
Normal map routing ignores whether a path is actually walkable for someone with limited mobility — stairs, missing ramps, broken sidewalks, or where the nearest elevator or accessible toilet is.
What it does
SafeStep fuses OpenStreetMap walkways, Seoul open-data accessibility POIs (elevators, wheelchair lifts, accessible toilets, escalators) and AI-detected street hazards, then routes over them with a custom Valhalla profile. A FastAPI app with a Leaflet map (prototyped in Seongdong-gu, 성동구) lets you see hazards and plan accessible routes.
Stack
- Python
- FastAPI
- Valhalla
- YOLO (Ultralytics)
- Leaflet
- OpenStreetMap
- Docker
My role
- Solo developer
- Routing engine
- Data pipeline
- AI hazard detection
- Web app
Highlights
Accessibility-aware routing
A custom Valhalla profile routes over real walkways and avoids detected hazards, instead of treating every path as equally walkable.
Public data, fused
Pulls and cleans Seoul open-data POIs — elevators, wheelchair lifts, accessible toilets, escalators — into live map layers.
AI hazard detection
A YOLO model spots pedestrian hazards in street imagery and drops geo-located hazard points onto the map.
Full stack, dockerised
FastAPI backend + Leaflet frontend with Kakao geocoding, packaged with docker-compose.