You know the story. You see an event you want to go to. You register, and you spend the next few hours trawling through train ticket websites and, for longer stays, trying to find a hotel with a good mix of price and proximity. It's unnecessarily complicated - something that should be so simple becomes a long drawn out process across multiple sites.
We don't think it needs to be this way. Voyager uses a myriad of APIs to automatically find the best train tickets, work out timings, find hotels nearby, and the places you can visit whilst you're in the area. Closer to the day, you get snippets of information such as weather. You can also get a direct link to buy your tickets from within the app. We've built this based on:
- Eventbrite API
- Google Directions API
- Foursquare API
- Open WeatherMap
- Travelport API
- BFare API
- Expedia API
- Skyscanner API
- (and a bit of National Rail link crafting for good measure)
It starts with Eventbrite. The user searches for an event in the app, and we relay that on to our HTTP server (a barebones multithreaded TCP server, custom written in C# this weekend). From there, we extract event details, location, and time. We use location to find the nearest major rail links, and build up a travel profile based on your home location (currently hard-coded for where I live). We then keep layering as many data points as we could manage on top!