During the winter break, I decided to start a side project. I wanted to get more exercise and make running more interesting. One way to do that is by challenging yourself. I decided to create an app where you can run a route, then run the same route again to see if you could improve on the time. Normally when running/jogging you are moving at your own pace. I think this will help you improve your speed.
Since I wanted this to be a mobile app, I decided to use Flutter to create it. Using flutter with Google Maps, I was able to get a map on the screen where the user can see their location. When the user wants to start their route, they tap start recording. Now the app is tracking their GPS location, time, distance, and route. When the user completes their route, they can view it and decide to save it.
Once a user has a route saved, they can race against it. The opening screen of the app lists all the available routes to race. While racing the route the user must stay within 5 meters of the previous route and follow the checkpoints. When the user reaches the end of the route, they could see if they improved on their time. If they did improve the current best time will be updated.
I think having the ability to challenge yourself will give you the motivation to get out and get more exercise.