Inspiration
When we were provided the datasets for the hackathon, we were faced with a difficult question: How can we use these datasets to have a tangible impact on those around us? We wanted to go further than providing insights and visualizations. Instead, we wanted to use data how it is used in the real world: to create change. Thus, the idea for HappyTrails emerged. We wanted to help bring joy to people’s traveling adventures by providing them companions who share their interests, and created a product to do so.
What it does
HappyTrails begins by having a user sign up on our sign in page, then directs to a page that conducts a 24-question personal assessment to determine your interests and preferences. Then, it sorts through the database of existing users to find ones most similar to you to plan your travel adventures together.
How we built it
HappyTrails is built primarily using React.js for the frontend application. The React framework calls an API we created using FastAPI, which is connected to the provided dataset of user data stored in a Firestore database. We use this API call to run a K-nearest-neighbors algorithm, which returns the most similar users in the existing database to the new user input. The results are then displayed on the UI.
Challenges we ran into
One challenge we ran into was having to reevaluate the way we initially planned to use our dataset. Originally, we had hoped to cluster all of the different attractions into groups using a K-means clustering model. For example, if users who rated churches highly also tended to like museums and parks, we would group those together into one category. This would allow us to gain a more holistic view of a person because we could more accurately extrapolate their opinions on a particular extraction even if they hadn’t rated that exact one. However, when we created the correlation matrix, we found there were no strong correlations between the attributes like we had hoped, which put us back at the drawing board in terms of figuring out how we were going to incorporate the dataset into our final product.
Accomplishments that we're proud of
We successfully developed a web application that utilizes a
What we learned
During our analysis and development, we learned various statistical methods for clustering data and identifying correlations between labels, including the formation of correlation matrices and k-means clustering and k-nearest neighbor algorithms. We gained further experience using platforms such as Tableau and frameworks like React and FastAPI while strengthening our analytical abilities and collaborative problem-solving skills.
What's next for HappyTrails
HappyTrails is a product we envision expanding past the time and scope of this Datathon. We hope to expand the capabilities of HappyTrails and creating a product the general public can use to elevate their traveling adventures. The first feature we hope to add is an attraction recommender that searches and recommends attraction nearby that match the user’s interests. They will then be able to rate the attraction after visiting on all of the categories Next, we hope to add a feature that matches the user only with other people in a desired radius of their choosing. This would allow people to decide how far they are willing to travel to meet companions for traveling, thus making the product more personalized.
Built With
- fastapi
- firestore
- html
- javascript
- k-nearest-neighbors
- python
- react.js
- typescript
Log in or sign up for Devpost to join the conversation.