This weekend at Hack The North we created a road-trip planner called TripGen. This web application uses Yelp to find places of interest within 40 km of the route we are taking, which is generated by Google Directions.

The places of interest, or pins, are sorted to show the attractions with the highest ratings in the area. The pins are shown by red markers and when one hovers over the pin it displays reviews of the attraction or restaurant. The user can add desired pins to their trip to create their custom road-trip route.

This application is useful for anyone who is planning anything from a short day trip to a long cross-country voyage. It gives the user information about places around their route that they would have otherwise not known about. It is also useful as they can choose which restaurants they would like to go to and avoid eating at fast-food chain restaurants. We created this application using the Google Maps API and the Google Directions API to find the route from the origin to destination, as well as receive the steps in the directions. These steps allowed us to calculate the changes of latitude and longitude to create points along the route. To find the attractions we used the Yelp API and sorted it to come up with the top ranking attractions within a 40 km radius of each point.

For our server we used linode and used redis as our data store to cash results so we did not have to keep receiving them from Yelp. This sped up our application significantly.

With the front-end we used the side-bar example from Bootstrap templates and we remodified certain elements using IanLunn’s hover to add effects. We aimed for simplicity to enhance the user’s experience. The elements’ colours were made neutral in order to bring more attention towards the pins and map. We used Gimp to create a logo for TripGen and once again focused on a simple, attractive and related image.

We hope our hack inspires everyone to go on an adventure and discover something new.

We are applying to the Yelp Inspire Adventure.

Share this project: