Trackercise
Summary
This is an application that allows a user to keep track of their workouts and their exercises for each workout. Through the use of mongodb and mongoose in javascript the data from a user is stored and updated once a new workout/exercise is added. Routing using express handles calls to the database in the backend in order to render the charts that contain a users data.
Table of Contents
- Usage
- Credits
- License
- Challenges
- Technologies
- Npm Packages
- Future development
- How to contribute
- Questions
- Link
Usage
Upon your first visit to the page, a form is rendered with an option to add a new workout. Once you start a new workout you can then add exercises to your workout through different forms. Once you have completed adding exercises you can then redirect to the dashboard and a chart containing data from your workouts is displayed.
Functionality
Credits
License
This Project is covered by the MIT license
Challenges
The main challenge for this project was creating a schema model for the workout collection through mongoose, and figuring out all the data types for each field in the model. The challenge following closely behind was using an aggregation pipeling in order to add a field for totalDuration that added up all of a users exercises duration into a single field.
Technologies
Npm Packages
- mongoose
- express
- morgan
Features
The main feature for this project is the ability to store a users information in a mongodb database in order to create an efficient web application that can be scaled up if needed.
Future Development
A definite path this project is headed is the ability to incorporate more routes and the ability to have a login page in order to be able to switch between users workouts.
How to Contribute
Fork the Repo and make a pull request for code to be reviewed and considered for merge to main branch.
Questions
If there are any questions about the project get in contact with me at my Email
Link
This is the link for the live website hosted on heroku