Inspiration

Have you ever started a fitness program and then quit? If you answered yes, you're not alone. Many people start fitness programs, but they may stop when they get bored, they don't enjoy it or if results come too slowly. Estimates suggest that the biggest reason for this is due to poor results coming from improper form. This is where Jimmy Gym Buddy comes in! It helps user to track their workout exercises and gives them feedback on proper technique.

What it does

There are four main features to Jimmy Gym Buddy: Exercise Buddy - this allows users to choose what exercise, and how many of that exercise, they are going to do. It will then provide live feedback on how the user is doing that exercise, and will count it for them. (How many times have you lost count of your exercises at the gym? Lots? Use Jimmy Gym Buddy!). Once you have completed the number of exercises you said you would, it takes you to a success screen where you can share your achievement on Facebook, twitter, and email. Exercise Identification - this allows users to upload an image or use live webcam stream to identify what exercise they, or someone else, are doing. This is particularly useful to check form since if it is not good form, the program will not identify the exercise! Exercise search - Using Google Assistant, users can ask Jimmy Gym Buddy about different exercises, workouts, and sports. When you ask about a particular exercise, Jimmy will respond with a detailed description of how to do it with proper form, as well as telling you what muscle groups it targets! (We also made one for Alexa using Twilio Autopilot however, it is still under review :/) Workout room - Using Twilio Video API, we created a chatroom which allows you to workout with your friends and watch them, or share workouts together!

How we built it

  • The website was created using HTML and CSS.
  • The Exercise Buddy was created using Teachable Machine and Javascript
  • The Exercise Identification was built using Teachable Machine and Sashido for backend
  • The Google assistant was built using Google Cloud and Dialogflow
  • The Alexa assistant was build using Twilio Autopilot
  • The workout room was build using Twilio Video API

Challenges we ran into

Time zones were challenge to use.

  • Erin is in England (GMT+1)
  • Prathamesh is in India (GMT+5:30) Also this was Prathamesh's first hackathon , so he was a little nervous, but soon got into it and is looking forward to participating in more hackathons!

Using the Twilio API also became an issue due to slow WiFi meaning API keys did not work correctly, but we solved the issue and managed to create the Workout Room. We are also disappointed that the Alexa skill was not added in time to Demo, however we will add the link once it has been reviewed :)

Accomplishments that we're proud of

We are very proud of creating a multifunctional application which we feel is beneficial for many different people and can be adapted in different ways, for example gamify the exercise counting to create an app for children to get them moving! We are proud of using Dialogflow to create a Google Assistant for the first time, as well as getting to grips with the Twilio APIs. Prathamesh is very proud of finishing his first hackathon, and we both can't wait to develop this project further!

What we learned

We learned so much during this hackathon, particularly to do with using Teachable Machine and implementing this into web applications. We learned how to use API keys - a concept neither of us fully understood before starting this hackathon - and how to use the webcam and upload images for identification. Also, we learned how to create a skill for Google Assistant!

What's next for Jimmy

We would love to continue developing Jimmy to add more exercises and more skills for the Google Assistant. We hope to package this web application into a mobile app as we both feel it would be well suited for use on mobile.

note

since it is a dynamic page, we cannot host the workout room on GitHub pages, but fell free to try out the rest of the web app :))

Built With

Share this project:

Updates