Looking to build fitness web app - multiple relationships, assign to users by day

I’m new to bubble but have been going through the tutorials and love the ability to DIY, but it’s a bit overwhelming (in an exciting way).

I am looking to build out a fitness workout web app, and I believe I know the broad approach I need to take. The first stages two are listed below so I’m hoping someone can point me in the right direction so I can dive in. (my full project scope/goal is here for reference):

Stage 1: Building workout plans

  • Stage 1a: Create a database list of fitness exercises tied to YouTube videos (I have a full list of exercises with links to YouTube videos in an Excel sheet)
  • Stage 1b: Build backend for admin to create workout “Plans” with relationships per below:
    • Plan:
      • Each plan is saved with a name
      • Each plan has a price/week
      • Each plan can be assigned to multiple users
      • Each plan is made up of “Weeks”
    • Week:
      • Each week can be saved as a template with a name
      • Each week is a calendar of days (Monday – Sunday)
      • Each week is made up of “Workouts”
    • Workout:
      • Each workout can be saved as a template with a name
      • Each workout can be saved to a category
      • Each workout is made up of “Sections”
    • Section:
      • Each section can be saved with a name
      • Each section is made up of “Exercises”
    • Each Exercise has:
      • Sets (a number field)
      • Reps (a number field)
      • Title (type-ahead fill from database list of exercises built in stage 1a)
      • Notes (text field)
      • Checkbox for user input on front-end (when checked allows user to input a number on the front end)
      - NOTE: If an exercise has the checkbox checked, we need to be able to store the data the user inputs to their account. Example: Squat is checked for user input, and the user inputs 300 lb, we need to save the date and weight and movement to the user so we can track progress on this movement.
      • Dropdown that is either “weight”, “reps, or “time”, and specifies which units the user input will be if the checkbox in the above item is checked

Stage 2: Create a front-end that allows a user to create a profile, pick a “Plan”, and be assigned workouts every day

  • User may view “Plan” titles without an account
  • User must create an account to start a plan
  • User can only have 1 plan at a time, but can choose to switch
  • When a plan is selected, the user will have today’s Workout in their account under “Today’s Training”
    • They cannot see future workouts
    • They can use a calendar view to select previous days and view that workout

All feasible.

I always start with setting up my database and it looks like at a glance you have the basis of yours already:

Database types:
Plan, Workout, Section, Exercise

Fields are what you’ve listed below each one:
Eg. for exercise:
Sets, Reps, Title, Notes, User input

Once you have setup your database put a few test entries in there (these are called ‘Things’) and then just start playing around with the front end editor and shout when you can’t figure something out :slight_smile:

1 Like

Awesome, thanks for taking the time to reply Paul! I appreciate it. I’ll dive into it with the database as the starting point and go from there.



This topic was automatically closed after 70 days. New replies are no longer allowed.