Inspiration
Visiting cities has become much cheaper with the booming market in budget airlines and a flexible traveller is sure to find a route which saves their money to enjoy the world.
What it does
Huyendo allows a traveller to choose the cities they want to visit and how long they want to stay in each place. Huyendo then checks flights between these cities to suggest different routes at the lowest prices. Take our recommendation and save £100s without missing out on the places you want to see.
How we built it
The back-end is built on top of Node.js and harnesses the search power of the Skyscanner API to find the flight data needed to calculate the cheapest routes between cities. Our responsive user interface is built using Facebook's React.js and the clean Bootstrap libraries provide an intuitive and accessible user experience. Both components run on an Ubuntu droplet hosted by DigitalOcean.
Challenges we ran into
Minimising the overhead caused by repeated calls to the Skyscanner API and efficiently processing the flight data to find the cheapest routes was vital to reduce the waiting time for the user however it means ensuring our calls to the API are parallelised and our algorithm is well designed. Harnessing the responsive power of React.js led to unexpected issues dealing with the global state and properly structuring the front-end components.
Accomplishments that we're proud of
Gathering a sizeable data set and structuring the information as a weighted graph to more efficiently find a cheapest route. Producing a slick, well-designed, dynamic interface which responds to user input and updates individual components as necessary.
What we learned
How to modularise the front end design into smaller components which can still interact through a global store but are largely independent and responsible for their own rendering. We learned about different third party libraries available for us to quickly develop our project without having to write basic functionality for a web-based application.
What's next for Huyendo
Provide the user with more options for both flexibility and constraints in designing their itinerary and provide links to the required booking platforms for the selected flights. We would like our users to be able to modify our suggestions and still use our information with their requirements to help them to save money when booking their next exciting tour.
Log in or sign up for Devpost to join the conversation.