Inspiration
With all the different exercises, machines, and potential ways of getting hurt, going to the gym can be intimidating to beginners. Furthermore, how does one know if they are progressing properly by increasing their weight at the right times? While there are different, complex resources available, not many all-in-one, beginner-friendly applications that help gym-goers produce genuine growth.
What it does
The app supports user authentication, so each user must make their own account before accessing the various features. Then they are able to design workout plans based on search queries. After undergoing a user-created workout, they can log the amount of weight that they lifted. This data is then used to track their growth over time, and the user can see this growth through data visualization. If they ever want to reach out to other members of the community, then they can use the blog feature. All users can publish to the blog, and all users can see the blogs that have been posted, so any questions or accomplishments can be shared.
How we built it
The backend was developed in Django and uses SQLite as the database. The front end was created as a combination of HTML, JavaScript, and CSS. We incorporated django templates to structure the webpages and used Bootstrap to style them.
Challenges we ran into
-We had to incorporate a python list into Canvas.js code to create the log graphs.[https://canvasjs.com/]
-We had to figure out how to send parameters along with GET requests on django so that we can access variables across templates.
-We had to create relationships between the users and their personal information to ensure that only they could access it.
-We had trouble finding the perfect API to tailor our needs as a lot of the APIs had improper documentation and did not provide the information we needed.
Accomplishments that we're proud of
One accomplishment that we are proud of is the ability to generate GIFs of exercises based on the results of a search query to the ExerciseDB API. This was challenging, but drastically improved the quality of the application. API used
What we learned
Everyone grew in terms of their ability to work on full-stack projects, especially through working with Model View Template architecture of Django. Between Django and front-end development, a lot of invaluable experience was gained. We also learned about how to parse JSON files from an API as well as generate graphs from a database using python and JavaScript. We also learned how to use django templates and HTML forms along with GET requests to forward parameters between HTML files and django views.py files. Furthermore, we were able to get experience in url routing and database management.
What's next for Gym Buddies
We envision Gym Buddies to be the holistic gym assistant. This means incorporating a feature that tracks the number of calories that people both intake and burn. It could additionally provide nutritional advice to help people with their diets on their fitness journey. Furthermore, we could implement a shop so that people could get their protein power, fitness gear, and pre-workout from the same place where they get their fitness management information. Lastly, we would like to incorporate a logger for all exercises. We only allowed the user to log specific statistics such as their weight and the amount they have benched or squat, but haven't added the option to log every single workout that comes out of the API. The future of Gym Buddies is limitless!
Log in or sign up for Devpost to join the conversation.