Tired of wasting our precious time towards planning out our vacations, we decided to come up with an app that does that work for us.
What it does
IteneratR takes in your budget, travel dates, and your departing location, and then using machine learning algorithms it generates a list of cool places you would be able to visit in that budget (all expenses included). Then, when you select a place, it will display an automatically generated Itinerary. This itinerary would include everything from your meals to the the points of interests in that area.
How we built it
We built it using Node.js for back-end, Angular.js for front-end and MongoDB for maintaining our database. We also use Microsoft Azure's machine learning service to make recommendations for users.
Challenges we ran into
Using promises in node.js was confusing. Additionally managing api call inside an api call led to some very high latency routes so we had to manage asynchronous requests when we could but often times, api calls relied on each other in a serial format. Machine learning on our data set was a challenge as vacation data was not easily available and the initial learning curve of using Microsoft Azure's Machine Learning service was a bit challenging.
Accomplishments that we're proud of
Just being able to implement this app in 36 hours is an achievement in itself. There were a lot of small of components to this app and we used 6 different api's in this app.
What we learned
We learned a lot about open sourcing a project. Developing in a collaborative environment was difficult but using git as our version control helped us develop in parallel while providing a tool to merge code. We also learned about IATA codes, which were used in the Amadeus API, and how the travel industry works. Attempting to generate itineraries was difficult but it gave us insight on how difficult planning a trip is.
What's next for ItenaratR
We would like to get more contributors to our open source project. Moreover, like to create our own REST API's for hotel and flight search in the near future.