Inspiration
Our idea for FindSpot was born out of a deep empathy for the challenges faced by individuals with accessibility needs when navigating indoor spaces. While outdoor navigation apps abound, there is a significant gap in solutions tailored specifically to this marginalized group. FindSpot aims to bridge this gap by providing clear and accessible indoor navigation instructions, whether it's finding a classroom in a school or locating a food outlet in a busy food court.
What it does
FindSpot allows for quick and easy navigation to a desired room in the E7 building by presenting the user with a simple to use interface. Once a room is selected, we use the user's phone to locate where they are, and find the shortest path to it, while avoiding all the obstacles in the way.
How we built it
The front-end of the application was built with React Native. To find the shortest path to the destination, we used Python as well as some libraries to expedite the process.
Challenges we ran into
The biggest challenge by far was the routing part of the project. This was because while, in theory, we knew that we needed to implement an algorithm, we didn't know how to integrate it into the React Native application. This caused an issue towards the end, where we had everything almost ready, but we didn't think about how the Python back-end would communicate with the React Native front-end application.
Accomplishments that we're proud of
The routing algorithm is the thing that we're most proud of. While the algorithm itself is not new from us, implementing it was quite challenging. Finding a common ground where we could include all the features we wanted (GUI, tracing of path) while retaining the pathing algorithm's functionality was no easy task, but we managed to pull through in the end.
Furthermore, the front-end of the React Native application was no easy task either. React Native is notorious for being picky when it comes to running certain code on specific devices, not to mention the overall availability of the React Native packages out there (some libraries do explicitly support React Native, even though they should). It was a fun, yet challenging experience to develop for that platform.
What we learned
Meticulous planning is something that we learned. Moving forward, we should better plan the project that we want to implement during the hackathon. While we managed to get most of the features we wanted for the project, it felt very rushed and many things did not work as expected. We therefore had to make many compromises for things to work the way we wanted them to, which is definitely something to avoid for the next time we'd be attempting this hackathon.
What's next for FindSpot
- Fix all the bugs! This goes without saying for every project, but there are currently many functionalities that are not perfect and/or convoluted because we did not have enough time to polish the experience.
- Implement the placeholder icons. Some icons were there for show, because again, we did not have enough time to implement all the features that we wanted. We therefore opted to fill the void with placeholder icons which illustrate how we want the app to look without providing additional functionality.
Log in or sign up for Devpost to join the conversation.