My inspiration came from trying to organise a holiday to somewhere for a cheap weekend break, where one person was living in Dublin and the other person was living in Eindhoven. I required multiple tabs open trying to search for flights from both locations, finding destinations, if both origins flew to the same airports and then coordinate times to match etc, and it was such an ordeal, I believed surely there should be some facility to make the whole process a lot easier.

Use cases

  • A user booking a holiday for people in two different locations, no specific destination in mind, something cheap
  • A user wanting to book a holiday for people in two different locations where they can easily compare arrival and departure times that match up in a location
  • A user wanting to organise a holiday/hen/bachelor party for people living in various locations, easily find a destination where everyone can fly to, and send links to friends
  • A holiday planner where friends can input dates when they are available to easily co-ordinate dates, share links to flights and share costs
  • A facility to meet in the middle before boarding a long haul flight for example: Dublin and Eindhoven -> fly to london, stop over before boarding a long flight to mexico together

What it does

Tripee is an inspiration search engine which finds a destination for people coming from multiple origins using Amadeus APIs.
Tripee, finds all the destinations in common from the locations inputted by the user on a specified date and displays the flights per destination.

How I built it

I built it using the MERN stack and using Amadeus APIs and SDK. The engine finds the destinations for each origin and then compares to produce a distinct destination list and then finds flights for all destinations on specified date. Using Amadeus Flight inspirations search and Flight low fare search, I was able to find the compatible list of destinations and then loop through to find prices for each route from both/multiple origins.

Challenges I ran into

I had a couple of challenges with performance, as it needed timeouts between api calls, and looping through all the destinations for each origins takes a bit of time, resulting in a couple of 10-20 seconds before results to display. I had to limit the destination list for example 10 destinations, due to the destination lists in common being large and then the finding prices per each destination.

Accomplishments that I'm proud of

This was my first javascript project and full stack project that I have created. Everything was new technologies for me and I am happy with what I have achieved and also learnt. I am proud of the shopping cart feature which I found challenging to code.

What I learned

I learnt how to build an express application with routing, which i found particularly hard to wrap my head around in the beginning. I learnt the function of promises in javascript which were particularly useful throughout the project. I also learnt react single page application structure by creating components which make up the frontend.

What's next for Tripee

As this web application is in the beginning, there are more features and additions such as ability to had up to 5 origins, filtering feature to filter prioritization in the search, more incorporation of Amadeus api such as standard origin/destination search, flight routing to booking pages. A holiday organiser/calendar where friends can input dates they are free and easily organise a trip with dates that suit. Friends can highlight locations or searches they have found and share with their pals. Have a price splitting feature, to easily send payments to each other. There are plenty of features in the pipe line which I am excited to create and implement.

+ 3 more
Share this project: