MarketplaceGyms and fitness studios

Gym App

A website and booking system for a small gym or fitness studio. Members choose a plan, the studio activates it once it is paid, and they book their classes from a 14-day timetable that shows the places left. Staff run the day from one admin: requests to activate, today's classes with check-in, the week's schedule, members and plans. The interface comes in English and Romanian; classes, coaches and plans are entered once, in the studio's own language.

Get this app
  • Included with the Starter and Pro plans
  • An exact copy of the whole application
  • Frontend, backend and data included
  • Yours to keep and change in your own repository
  • Multilanguage, for whatever country you need
Home page hero with the studio's facts
Home page hero
pages on the website
7
admin screens
7
backend workflows
10
data tables
8
days of timetable to book
14
Made for
  • Small gyms and fitness studios with a weekly class timetable
  • Boxing, cycling, yoga, pilates and strength studios that run capped group classes
  • Studios that take payment at the desk or by bank transfer
  • Agencies building a booking site for a fitness client
Every screen

See it the way members and the studio do

Looks like a gym, not a template

  • Full-bleed hero with a poster headline and the studio's facts
  • Up next: the coming classes with places left and a Book button
  • Class tiles, coaches in grayscale that turn to colour, and the plans
  • FAQ and a visit box with the address and opening hours
Home page hero with the studio's facts

1 / 7Home page hero with the studio's facts

From plan to class

Every booking checked by the server

Members book only with an active plan, within its weekly limit, while there are places left.

  1. Requested
  2. Active
  3. Booked
  4. Attended
My training while the plan waits for payment
What you get

The whole application, one to one

Website

  • Home
  • Schedule
  • Classes
  • Coaches
  • Memberships
  • Account, sign in and create account
  • My training

Admin

  • Today
  • Schedule
  • Members
  • Memberships
  • Classes & coaches
  • Plans
  • Settings

Backend

  • 10 workflows for the site, sign-in, bookings, memberships and the admin
  • 8 tables: users, settings, class types, coaches, sessions, bookings, plans, memberships
  • 5 sample classes, 4 coaches and 4 plans

Technology

  • React 18, Tailwind CSS, shadcn-style components, Lucide icons
  • Passwords stored as hashes; sign-in uses signed tokens that last 7 days
  • Admin data and changes require an admin account, checked on the server
  • Membership, places, weekly limit, booking window, cancel cut-off and check-in time checked on the server
  • English and Romanian interface, with dates, numbers and prices formatted for each
In the admin

Change it without touching code

  • Studio name, tagline, address, contact details, currency, time zone, announcement bar and opening hours
  • The cancel cut-off and how many days ahead members can book
  • Every class type, coach, plan and class on the timetable
In the code

A quick edit to make it yours

  • The home page headline and introduction
  • The “three steps” band
  • The questions and answers
  • The page introductions
  • The colours and fonts
  • Any interface text, in the English and Romanian language files
Setting it up

Seven steps to your own studio

You will need

  • A Ubex account, where the app's workflows and tables run
  • Your own photos of the studio and the coaches, online at a web address
  1. Add your own JWT_SECRET.
  2. Set the app's address in the allowed origins of the workflows.
  3. Clear the demo members, memberships and bookings from the tables.
  4. Publish the app on a subdomain or custom domain.
  5. Create the first account. It becomes the admin.
  6. Enter the studio's details, time zone and booking rules in Settings.
  7. Replace the sample classes, coaches and plans, and add your timetable in Schedule.
Good to know

What it doesn't do

Better to know now than later. You can add any of this yourself: the code is yours to change.

  • No online paymentMembers pay at the desk or by transfer, and the studio activates the plan.
  • No emails or textsNo confirmations or reminders, and members are not told when a class is cancelled.
  • No password resetA member who forgets their password asks at the desk.
  • No waitlistWhen a class is full, it is full.
  • No class packsNo credits: plans have a weekly limit or are unlimited.
  • No drop-insAn account and an active plan are needed to book.
  • No automatic timetableClasses repeat only when added with “repeat weekly”, for up to 12 weeks.
  • No refundsCancelling a membership does not cancel the classes already booked.
  • No photo uploadPhotos of classes and coaches are set by web address.
  • No reviews or exportNo member reviews and no data export.
  • One studio, one currencyOne studio and one currency.
  • Weeks counted by dateWeekly limits run Monday to Sunday by date, not by the studio's local midnight.
  • The very last placeTwo people booking the last place at the same moment is not guarded atomically.
  • Content in one languageThe interface switches between English and Romanian, but class, coach and plan names, descriptions, plan features and the announcement bar are entered once, in the studio's language, and are not translated.

Everything in these screens is made up: Forge Studio, its address, email and phone number, its coaches and members, the bookings and the revenue figures. The photographs are placeholders from Unsplash. They are not part of the app, so replace them with your own.

Open your studio's timetable

Get an exact copy, put your name on it and make it yours.