🧠 Inspiration

We were inspired by the daily challenges visually impaired individuals face when navigating unfamiliar transit routes. Public transportation systems are rarely designed with accessibility in mind, especially for those who rely on audio feedback or screen readers. We wanted to create a voice-first assistant that empowers safe, confident commuting—without needing to rely on sight or constant help from others.

💡 What it does

SafeStep is a mobile web app that provides voice-guided, step-by-step transit navigation for visually impaired users.
Users simply:

  • Speak their destination into the app
  • Receive real-time, spoken transit directions
  • Follow instructions one step at a time
    All directions are also transcribed on screen high-contrast text for additional accessibility. No app download is required—just open the web app and start talking.

🛠️ How I built it

  • Frontend: A responsive web app using Nextjs with the websockets for breaking the audio into chunks for real-time speech-to-text and text-to-speech
  • Backend: A lightweight server (Flask) that handles requests, integrates with the Gemini API for natural language understanding, and fetches route data using the Google Maps Directions API
  • We designed the UI with accessibility in mind: large buttons, screen reader compatibility.

🧗 Challenges I ran into

  • Parsing natural language queries and converting them into structured destination/location input was tricky. We leveraged Gemini to intelligently interpret user speech.
  • Handling real-time speech recognition in browsers while managing interruptions or ambiguous input took trial and error. (Amaan; trust me i was so close to give up)
  • Time constraints limited our ability to implement full GPS-based real-time updates or caching(redis).

🏆 Accomplishments that I am proud of

  • Delivered a fully working MVP in under 38 hours that responds to voice, understands complex queries, and gives friendly spoken directions.
  • Created a zero-install, cross-platform web experience that works on any smartphone browser
  • Built with real-world accessibility needs in mind—not just as a feature, but as a core purpose.

📚 What I learned

  • How to combine real-time browser APIs (speech, TTS, geolocation) with powerful AI services like Gemini for a smooth, voice-first UX ( I HATE CHUNKING DATA NOW)
  • No matter how hard a project is or how unfamiliar with the tech you may be You can do it (as cliche as it sounds).
  • How to work within tight constraints and prioritize features for real impact

🚀 What's next for SafeStep

  • Add a better way to give user the directions and have a multi-directional conversational ui / interface that goes back and forth between user and the app, to leverage the best use case of this application.
  • Add GPS-triggered step progression so the app auto-advances instructions as users move (maybe embed a live map as well)
  • Support multi-turn conversations, allowing users to ask follow-up questions like “what’s next?” or “is this the right stop?”
  • Introduce caching for frequent routes, in case of signal loss mid-journey
  • Partner with local transit systems to access live delay and service alert data
  • Run usability tests with visually impaired commuters to refine and evolve the app into a real-world tool

Built With

Share this project:

Updates