Instago

Instago! Your goto travel planner app! We're taking the most annoying parts about planning for a trip and leaving only the funnest parts to you! Just give us your destination and we'll quickly generate you a trip to the 5 most attractive tourist destinations starting at the most ideally located hotel at your destination.

We were inspired by our experiences with planning trips with our friends. Often times, it would take us a few days to find the best places we were interested to see, in a city. Unfortunately, we also had to spend time filtering away the destinations that we were uninterested in or did not fulfil our constraints. We hoped that by building Instago, we can help reduce the time it takes for people to plan their trips and get straight to the exciting preparation for the big day!

In this project, we chose to run our front-end with React and build our back-end with Stdlib, a technology we have never used before. On the front-end side, we used Google Maps API for the first time in conjunction with React. This proved to be more challenging than expected as Google does not provide any in-house APIs that primarily support React. We also lost a significant amount of time trying many npm wrapper packages for google maps. They either did not support Google Directions, a key feature we needed for our project or were poorly documented. We ended up discovering the possibility of introducing script tag elements in React which allowed us to import the vanilla Google Maps JS API which supported all map features. The largest challenge was in the back-end. While Stdlib was phenomenally flexible and easy to set up, test, debug and deploy, we needed to write our own algorithm to determine how to rank tourist attractions. We considered factors such as tourist attraction location, type of tourist attraction, number of ratings and average rating to calculate a score for each attraction. Since our API required making multiple requests to Google Places to get tourist attraction information, we had to make compromises to ensure the speed of our algorithm was reasonable for users.

The number of next steps for our project is boundless! We have plans to integrate Facebook/Google login so that we can take in user likes and preferences to make even more tailored travel plans (Users can also store and share their trips on their associated accounts)! We want to apply a semantic similarity calculation using Word2vec models and compare a city's tourist attraction names and types with the interests of users to gather a list of places a user would most likely visit. Concerts or sport games that are happening around the time of the user's trip could also be added to an iteniary. We also have plans to add budget constraints and modes of travel to the calculation. It was too much to add all these cool features into our project before demoing, but we are excited to add them in later!

Overall, this was an awesome project and we are so proud of what we made! :)

Share this project:

Updates