Inspiration
Our inspiration for Pathway came from recognizing the significant accessibility challenges faced by individuals at Cornell. With its steep hills, uneven paths, and limited access to certain areas for wheelchair users or those with hearing needs, navigating campus can be incredibly difficult. We wanted to build a platform that not only addresses these obstacles but empowers individuals with real-time, community-driven information about accessible routes and locations, helping to foster a more inclusive environment at Cornell and beyond.
What it does
Pathways is a community-driven platform that empowers individuals with accessibility needs to navigate their cities with confidence. Users can drop pins on a map to mark locations as accessible or inaccessible based on factors like wheelchair access or hearing loops. With real-time updates and a supportive community, Pathways helps people find and share essential accessibility information, making cities more inclusive for everyone.
How we built it
We built the project by using Next.js for both the frontend and backend. On the frontend, we used React with TypeScript to create reusable components like the post display and the community map interface, while using Tailwind CSS for quick, responsive styling. We implemented forms for users to submit posts and report inaccessible locations, ensuring data validation to improve user experience.
For the backend, we leveraged Next.js API routes to handle requests like fetching and posting data to the server. We used FastAPI to store user posts, profiles, and accessibility reviews
Challenges we ran into
One of the most significant challenges we encountered in Pathway was implementing the interactive map feature. Creating a map that displays accessibility-friendly locations might seem straightforward, but ensuring it met the diverse needs of our users presented several obstacles.
To handle real-time data handling for the markers, we needed to dynamically update and display locations based on user-submitted data, which introduced complexities in managing asynchronous API calls, efficiently updating the map without causing unnecessary re-renders, and handling state changes for large datasets. We had to optimize the map rendering so that it could display multiple markers, filter them based on accessibility criteria, and ensure that performance remained high, especially on slower devices or connections.
Accomplishments that we're proud of
We’re proud of several key accomplishments in building Pathway. Firstly, we’re proud that we were able to integrate real-time data to provide up-to-date information on accessible versus inaccessible locations, allowing users to contribute and receive meaningful insights. We’re also proud of our user-friendly interface that makes it easy for people to mark and share insights on locations, create profiles, and contribute on community forums. Most importantly, we’re proud of the fact that Pathway helps address a prevalent problem in our community by bridging accessibility gaps and empowering people to navigate cities with confidence.
What we learned
This project provided a hands-on opportunity to work through the entire stack, from building a user interface to setting up backend APIs and connecting them to a database. We understood how to manage local component state and pass down props effectively. Each React component had a specific role (e.g., PostItem handles the post UI), ensuring component reusability across the app. As the project grew, the importance of version control (e.g., using Git) to manage changes and collaborate on the codebase became clear. We worked on branching, resolving merge conflicts, and reviewing code changes to maintain a clean and consistent codebase. With features like maps for accessible venues and user-reported accessibility statuses, the project taught us the importance of considering diverse user needs. Making the platform more inclusive to people with disabilities—through customizable markers, keyboard navigation, and screen reader support—helps improve usability for everyone.
What's next for Pathway
Looking ahead, we have ambitious plans for Pathway. We aim to implement accessible route planning functionality, allowing users to find the best paths tailored to their accessibility needs. Integrating real-time data on city infrastructure, like temporary obstacles or facility updates, will enhance the reliability of our service.
We also plan to expand our database of accessible venues by collaborating with local businesses and organizations. Introducing user authentication will enable personalized experiences, such as saving favorite locations and contributing reviews. Finally, we're committed to continuously involving our users in the development process, ensuring that Pathway evolves to meet the community's needs effectively.
Built With
- fastapi
- google-maps
- html
- nextjs
- python
- react
- tailwindcss
- typescript
Log in or sign up for Devpost to join the conversation.