Inspiration

While we were planning our trip to this very hackathon, we ran into the issues that affect nearly everyone who travels. How do I get from my office to the destination all in one app? How much will everything cost? Why do I have to use at least 3 different apps to get all of the things I need? We plan to solve this shared problem with our app, JetStream

What it does

JetStream provides a seamless end-to-end experience to plan entire business trips. The only inputs required by the user are start and end address and date times for your flights. We then take you to our main display, which includes the trip itinerary and a side panel for selecting transport options, all overlaid on a beautiful, interactive map. After selecting each option, the map view and routes will be automatically updated based on the leg of the trip. Once everything is complete, the trip itinerary with total cost and time breakdowns is available.

How we built it

For the frontend, we used React to create our interactive elements, Bulma for CSS, and Deck.gl for rendering our maps and routes. The backend was made with Flask for our proxy APIs, which relied on 6 different APIs. These included INRIX parking for parking information, OpenStreetMap Routing for routes and times of driving, flightAPI for flight details, here.com transitAPI for routes and times of public transport, SkyScrapper for rental cars and hotels, and Mapbox for our base map.

Challenges we ran into

We originally planned to use INRIX Routing to handle the routing for driving. However, it was not working as expected on INRIX’s side, so we had to use and alternative, despite having the infrastructure to implement this API.

Accomplishments that we're proud of

We were proud that we were able to implement many different APIs into our project, as these APIs are normally used with only 1 in mind when creating projects similar to ours. We are also proud of the fluidity and ease of use of our UI, as everything happens in the background without much user input, but they are still able to control the map view if they wish.

What we learned

We learned how to work with different APIs that not only had many different sources, but also displayed information very differently, meaning we had to create a unique approach for parsing each API. We also learned how to dynamically render the map using Deck.gl.

What's next for JetStream

If there was further time to work on JetStream, we would implement ridesharing options through services such as Uber and Lyft, as well as add multilanguage support to complete our vision of this being a product for business.

Built With

Share this project:

Updates