Inspiration & What it does
We were inspired to build InclusiFind because we feel that there is no single, established platform to easily find accessible locations. Most people often overlook and take for granted that they can go anywhere they want without needing to plan or do research on the place they are going. If someone, such as a student, who requires accommodations needs to go somewhere or do something such as studying, they need to actively search for places that suit their needs and allow them to function comfortably. With InclusiFind, we hope to make this process easier for those who need accommodations to find places that welcome them. We do this by providing users a search bar where they can search for locations, a filter bar that allows them to search by accessibility categories, and a map that marks different places that are accessible based on filters. This will help them quickly and easily find places that accommodate their needs.
How we built it
We built this project by dividing the workload. Jacky, Nas, and Hodge focused on the core logic, while Malin and Cole handled the front-end and design. The app functions by fetching HTML from a list of URLs and parsing the data based on keywords that correspond to accessible services. If a match is found as it iterates through the URLs, the relevant data is temporarily stored in an object. This object is then added to an ArrayList of accessible places, which is subsequently written to a JSON file. Different components then access the data as props and displays it through this JSON.
To build the front end, we first built a basic html structure within the app, which started out as two divs. After we got the basic structure situated, we took it over to Figma so we could build it out faster and mess with the colors more easily. We repeated this process for the other pages, starting with the Figma file first then building out the page. We tried to keep the design simple and easy to use, and used the Material UI Library to keep certain components consistent across our whole application.
Challenges we ran into
One major challenge we faced was our lack of experience with web scraping when starting the project. Since web scraping was essential for identifying accessible places, it was an important part of our project. We solved this challenge by watching a lot of tutorials and reading a lot of documentation. It was a long process and was definitely an accomplishment after we figured it out.
Another challenge we faced was that we did not have a database setup for our project. Because we did not have a database, it made it very difficult to pass certain types of data, such as images, as props into our components and display them in our application. We solved this challenge through brute force, attempting different solutions over and over until we finally landed on code that worked.
Accomplishments that we're proud of
Overall, we're very proud of how this project turned out. We managed to build a functional and visually appealing application all hosted on a private server within a short timeframe. Every group member made significant contributions, even though not all were familiar with the technologies and concepts involved. Successfully figuring out web scraping was one of our biggest accomplishments
What we learned
Through building this application, we all learned something new. Most of us were knew to Material UI, so we all got to learn a little bit about that UI framework. Some other skills we learned and got exposure to were Web Scraping, React, and Figma.
What's next for InclusiFind
We're hoping to either build out a more mature version of this application in the future, focusing on more locations and nation-wide scope. We also hope to inspire people to build something similar as other, similar applications will aid in helping those with accessibilities live the most comfortable life they can.
Built With
- axios
- cheerio
- figma
- git
- gitlab
- google-maps
- javascript
- material-ui
- private-server
- react
- typescript
Log in or sign up for Devpost to join the conversation.