All work
Case studyHospitality2025

Gym · Marketing
Bilingual marketing tier for the gym SaaS — 45 EGP per client for trainers, 90 EGP flat for gyms.

The public face of GymSaaS, priced at 45 EGP per active client per month for solo trainers (capped at 500 EGP/month past 10 clients) or a flat 90 EGP/month for gyms and studios with unlimited clients — plus a 7-day free trial, no card required. EN/AR landing, pricing tiers, and demo bookings. Shipped as a `marketing-site/` sub-app from the same monorepo as the SaaS, deployed independently to gym.mena-x.com.

Role
Solo · Design · Engineering
Stack
Next.js 15 · next-intl · MUI 7 · Vercel split deploy
Timeline
Live · ongoing
Live at
gym.mena-x.com
Gym · Marketing screenshot
01 / Overview

The bilingual marketing tier for the Gym SaaS — lives at gym.mena-x.com and feeds tenant acquisition for the app at app.gym.mena-x.com.

02 / Problem

The SaaS app and the marketing site have very different jobs. Bundling them creates a slow landing page; running them as separate repos doubles the maintenance surface.

03 / Approach

Single monorepo, two Vercel deployments. The marketing site lives under `marketing-site/`; the SaaS lives at the root. Both share Tailwind tokens and a few utilities; each ships independently.

04 / Outcome

Markets two real tiers: 45 EGP/active client/month for personal trainers (capped at 500 EGP/month) and 90 EGP/month flat for gyms and studios with unlimited clients, plus an enterprise tier from ~$40/month. Marketing site deploys in seconds without touching the SaaS app, and vice versa.

45 EGP
Per trainer client
90 EGP
Flat, per gym
7-day
Free trial
05 / My role

Solo engineer for the monorepo architecture, the split deployment, and the bilingual marketing UI.

Next project
Gym · App Hospitality