Inspiration
With the rise of being real, a new wave of spontaneity is taking over the world. We propose a supplement to this sense of adventure: Tripfol.io! Let Tripfol.io curate an experience for you – share your location, receive a list of recommendations, select places of interest, and watch a complete itinerary unfold before your eyes. Live in the moment. Live with Tripfol.io!
What it does
Save hours of aimless scrolling and jump straight into the adventure with Tripfol.io. All you have to do is pick a location, and watch as your trip magically unfolds. Tripfol.io gives you all the best options in your area of interest, from local favorites to the most popular tourist attractions– you just have to run our app.
How we built it
Using Flask and Python on the backend, we used the Yelp API to pull the top 10 results from each of the following categories: food, attractions, and shopping. We then make calls to the Inrix Incidents and Parking APIs to display warnings for severe incidents (accidents, road weather conditions, events) nearby a location and show whether the location has off- or on-street parking options. The user then selects locations of interest, and we use Inrix Routing to calculate the most time-efficient route and the total travel time.

Challenges we ran into
Challenge #1 – Visualizing Google Maps and displaying Route data
One of the first challenges we faced was trying to integrate a map into our mobile application. We could not place waypoints or polylines but eventually understood the plugin we were using, and we were able to display the necessary information using lists of data.
Challenge #2 – Graph theory and creating the most “optimal” route
Our other biggest challenge was the technical obstacle of displaying the most optimal route. Our first thought process was to implement a graph theory algorithm that had a runtime of O(n!), but we were able to bring it down to O(n^2). It was a good moment of growth for us because in our research to optimize the time complexity, we discovered Edmond’s algorithm. We would like to implement it in future iterations of our project, but unfortunately did not have enough time this sprint.

Accomplishments that we're proud of
Success #1 – Creating Flask APIs
Many of our members have never worked with Flask before, but we dived in immediately to learning and exploring the framework. Within just a few hours, we had our Flask REST APIs running and integrated with both Inrix and Yelp. This was a huge accomplishment and critical to setting up the rest of our project for success.
Success #2 – Collaboration & Communication
A great team starts with great communication, and this is where we excelled. Before we even started coding, we iterated on our initial idea, outlined features needed for a minimum viable product, and assigned detailed tasks to keep us on track. This helped us separate the project into mini-milestones that each team member could work towards. In the end, compartmentalizing our project into tasks ensured a smooth transition with combining all of our work. We had regular check-ins to stay in the loop about other peoples’ progress, which allowed us to work on problems together.
What we learned
1) Writing Flask APIs
2) Using Postman to its maximum capabilities
3) Reading from Inrix APIs
4) Graph theory techniques
5) Independent front-end design & development (shoutout to Liam!)
What's next for Tripfoli.io
1) Manually add stops
2) Estimate how much time user will spend at location
3) Generate trips based on TikTok/Instagram trending, and possibly turn to own social media venture!
4) Allow businesses to promote themselves as recommended via a monthly subscription
5) Integration with Airbnb
6) User Authentication to Store Past Trips
7) Add support for Uber/Lyft Integration
8) Curate recommendations based on price



Log in or sign up for Devpost to join the conversation.