Inspiration

We are a group of avid travelers. When traveling, we not only just want to plan our trip routes, but also explore new places and keep track of where we have visited in the past. Often, our friends ask us for travel ideas and we can easily show them our recommendations by pulling out our data in our website.

What it does

Our project provides a solution for users who love to travel, or explore new places. The app takes in user's input of locations, and calculates the routes of the locations. In addition, the user can search for nearby businesses, such as restaurants, bars, hotels…etc, and the user can also add those dropped locations into the map to form routes. The user can also remove any places from the route any time they want. They can also check history of routes they have been to through their personal account.

How we built it

We used React, JavaScript, HTML, and CSS to build our project's frontend. In the backend, we used MongoDB to store the data, and integrate Google Map API to build our map feature and to calculate routes.

Challenges we ran into

Since we divide the work into frontend and backend teams, we ran into issues as we were integrating front and backend as we merged the code together. As a result, we spent a significant amount of time on bugs to make sure the whole app runs smoothly. With the nature of hackathon, time is precious, and we had to be selective with some of our features that we intended to build in the beginning. For example, we wanted to allow a user to add multiple routes for their friends, so that multiple routes can show up on the same map. But due to time constraint, we had to prioritize other features such as looking for nearby businesses, which is a feature that would be more useful for someone traveling.

Accomplishments that we're proud of

We are especially proud of being able to decipher the obscure google Maps API, Directions API and, Places API etc. to accomplish our goal of customized path finding. location pinning, and making recommendations to nearby places. It’s also worth noting that we collaborated well in the short time frame and helped each other develop the skill needed for specific tasks.

What we learned

For the maps part, we learnt how to manipulate map object, how to set up, and handle Changes within the map. We also learned how to use axios to make requests to servers for the login/logout feature and store user data in our database using MongoDB. Last but not least, for the dashboard, we learnt how use react hooks to better style our dashboard components.

What's next for Journey Planner: Travel Smarter, Not Harder

We loved this project, and would like to continue to improve on the dashboard to make it even more user friendly. We’d also like to add features to make it possible for one person to plan a trip for a whole entire group starting from different source location, and be able to email the trip plan to everyone involved. We might incorporate a feature to register a group, or even a calendar feature to cross check different people’s schedules to avoid potential conflict. We will also be looking at permission controls, to have the calendars of individuals only visible to the friend that’s planning the trip.

Share this project:

Updates