We interviewed 6 people on their experiences during travel. Main pain points that we identified were associated with planning itineraries. People either spent large amounts of time creating their itinerary, or they just skip the process altogether because it would be too time consuming. Here's a link to our summary of user research document: link
What it does
Toto is an app that makes the itinerary creation process much quicker by using a personalization algorithm to recommend activities and construct your itinerary from your age, interests, budget, and more.
How we built it
Backend We used python and 4 of its libraries: numpy, math, datetime and geopy We made the following functions: - parseProfile: parses a json file (In full implementation this json file would be stored on a database) for user profile information & creates a UserProfile object - parseUserTrip: parses a json file (In full implementation this json file would be stored on a database) for user trip information & creates a UserTrip object - parseAmadeus: parses the data returned by the amadeus api call and creates a list of Location objects - createValueList: creates a value list and weight list corresponding to Location objects. The value is calculated by matching the Location’s category with the user’s hobbies. The weight is calculated by how long people usually spend at the Location and the time it takes to get there from the user’s hotel. - printknapSack: Runs the knapsack algorithm on the value and weight list and prints out the items the algorithm chose To test, we have two templates for json files that we would expect to see stored in a database from our app One is for a user - Dorothy, we would store information like her name, age, hobbies, and travel preferences The other json file is for a specific trip (If you leave these inputs for file name blank, by default it will use our templates to run) With this information and using amadeus API we can make top recommendations about where the user should visit in any country.
Challenges we ran into
- Determining intuitive and simple user flows on the front end
- Balancing the workload of all our members
- Accessing the Amadeus API
- Attempting to integrate other APIs
Accomplishments that we're proud of
- Taking an idea and fleshing the content and functionality out to a working prototype and matching the backend functions perfectly.
- Identifying a solid pain point encountered by travelers
- Managing everyone's time in a way that we could put out our best work
- Learning a new prototyping software: Figma
- Learning a new coding language: Python
- Applying basic UX/UI design principles to a product from start to finish
What we learned
- How to use Figma efficiently
- How to use Python
- How to access the Amadeus API
- How to use Github
- How to collaborate remotely
What's next for Toto
We hope to recruit front end developers to make the Toto app a real thing!
- Incorporate other APIs to get a clearer rating system for events/locations
- Incorporate Machine Learning to make smarter decisions and suggestions
- User test our prototype