Inspiration

Have you ever had trouble finding interesting jogging routes that are just long enough? Whenever I jog, I always want to end my job right back where I started, so I can cool down and have some water. However, this usually results in the jogs being either too long or too short, because the path we take does not fit the desired length. This program will solve that problem.

What it does

Given a location and a distance, it will find a FUN jogging route that starts and ends at your location that is approximately the distance you want WITHOUT backtracking and running the same BORING road back

How we built it

We used OpenStreetMap API and Openrouteservice API for location data and analysis. We used React for our frontend, and Express and MongoDB for our backend to store previous search values.

Challenges we ran into

It was difficult to find routes that would match the exact desired distance while keeping the route fresh, so we decided to provide multiple that roughly match the desired distance. It was also difficult to provide a map on the website that would show the suggested routes.

Accomplishments that we're proud of

We are proud of our algorithm for calculating the optimal route, our use of APIs, and the display of the final route on the frontend. We are also proud of the way we made the program easy to use and understand.

What we learned

We learned how to use javascript and APIs, and how to collaborate as a team. This project also helped us improve our teamwork and communication skills. It also gave us experience finding solutions to difficult problems and overcoming obstacles along the way.

What's next for PathPerfect

We plan to develop this into an app that will tell you directions while you run so you don’t need to focus on what direction to go in. We also plan to make the app tell you your average speed at all times and log your speeds and distances during your runs. It will also be able to match the exact desired distance in the future instead of a rough estimate.

Share this project:

Updates