Mapty is a map application made with Vanilla JavaScript to store workouts like running and cycling.
Discover the ultimate workout tracking tool with Mapty - a unique application that utilizes a huge map to log your exercise routes.
This is a web application where the goal is to log the workouts(running or cycling) for the users in their desired location and set some specifications for their workout accordingly. This application is built using Advanced Javascript with Object-Oriented Programming which uses Geolocation APIs, Browser APIs along with some External libraries.
- HTML
- CSS
- JavaScript
- Leaflet Api
The user can choose any point on the map and choose between running or cycling. In order to submit the workout, the user needs to fill out several details like distance, duration, cadence or elevation. All the workout will be saved after choosing any new workout option. The user is able to find the workout on the map by clicking on the list. The list contains workout details like pace, cadence, duration, speed as well as the date of the workout. If the user reloads the page, all the data will be saved.
- Real time geolocation update.
- Custom map by leaflet API.
- Ability to log a workout(Running or Cycling) to specific location.
- If running workout then user can set his/her workout distance, duration, cadence ,then application check the data validation and calculate the pace.
- If workout is cycling then user can set his/her workout distance, duration, elevation gain then application check the data validation and calculate the speed.
- All the workout information will appear in a workout list.
- A Map marker will also set on the map for specific workout with date and workout type.
- User can click on the workout to move the marker to see his/her different workout info on the map.
- All the workout information will save in the localstorage so that application will not loose its stat in case browser is load. Ability to delete all workouts.
- Ability to delete a workout.
- Ability to edit a workout.
- Create 'Add Workout' button to better improve the App`s UX and UI.
- Ability to sort workouts by a certain field (e.g. distance).
- Re-build Running & Cycling objects exiting local storage.
- More realistic error and confirmation messages.
- Ability to position the map to show all workouts.
- Ability to draw lines and shapes instead of just points.
- Display weather data for workout time and place .
- Improve responsiveness for mobile device and customize the UI to make more user friendly.