Inspiration: Clearing Paths for Everyone

Imagine Sarah, a young woman excited for a night out with friends. She's dressed up, laughing in the car, her wheelchair ready for adventure. But upon arriving at the venue, her joy shatters—steep stairs with no ramp block her way. Her friends scramble to help, but the exclusion stings deeply, turning what should be a fun evening into a painful reminder of barriers. This story, inspired by real experiences of people with disabilities, fueled Clear Paths. As someone passionate about inclusivity, I was motivated by the "Limitless" hackathon theme to create a platform that empowers users to discover and share accessibility info, ensuring no one faces such disappointment. Drawing from personal empathy and stories like Sarah's, Clear Paths aims to make every community more navigable and welcoming.

What I Learned: From Code to Compassion

Building Clear Paths taught me the power of blending technology with empathy. Technically, I deepened my skills in full-stack development with Flask, integrating AI (Gemini) for smart suggestions, and handling databases for persistent data. I learned about accessibility best practices (e.g., ARIA labels, text size controls) and API quirks like rate limits. On a deeper level, I gained insight into real-world challenges for disabled users—iterating features based on inclusive design principles. Challenges like debugging JSON parsing from AI responses honed my problem-solving, while deploying on Render showed me scalable hosting.

How I Built It: Step-by-Step Innovation

Clear Paths is a Flask-based web app with a clean, accessible UI. I started with a SQLite database for locations and reviews, migrating to PostgreSQL on Render for persistence. Key features include:

  • Search and View: Users search locations, viewing details like address, ratings, and dynamic maps (using Leaflet and Geopy for geocoding).
  • Reviews and Ratings: Star-based ratings and comments, stored in the DB, with AI filtering (Gemini) to summarize accessibility insights from scraped data (BeautifulSoup).
  • Add Locations: Forms auto-geocode addresses, storing lat/long for maps.
  • AI Suggestions: Gemini simulates Maps queries for wheelchair-friendly spots, returning structured JSON with ratings, distances, and top reviews.
  • Conversational AI: A voice agent (integrated via webhook) greets users, asks for locations, and fetches/pulls reviews dynamically. I deployed on Render for free, using environment variables for secure API keys. The app is responsive, with features like text size controls for better usability.

Challenges Faced: Overcoming Barriers

Rate limits on Gemini's free tier caused "out of nowhere" errors during testing—solved with fallbacks and caching. JSON parsing from AI responses was tricky (e.g., handling invalid formats), requiring regex cleanups. Migrating from local SQLite to persistent PostgreSQL on Render involved schema tweaks and env var setups. Balancing emotional storytelling (like Sarah's narrative) with technical depth in the demo video was creative fun, but ensuring inclusivity (e.g., voice agent for all users) pushed me to iterate on UX. These hurdles made the project stronger, mirroring the app's mission to clear paths.

Conversational AI Webhook**: Custom JSON integration for voice agent queries.

Built With

Share this project:

Updates