2026Live & in use
PhysiqueAtlas
A coaching platform for contest prep — so a coach stops running the most precise sport in fitness out of WhatsApp and a spreadsheet.
- Role
- Sole developer — schema, RLS, Edge Functions, web app, mobile app, billing
- Stack
- React 19
- Supabase
- Postgres
- Expo
- Stripe
- TypeScript

Status
Live. Registration is open in free trial / demo mode at physiqueatlas.com.
Decisions
Assigned plans are deep copies, not references
When a coach assigns a training or nutrition template, PhysiqueAtlas deep-copies it into independent tables instead of pointing at the template with a foreign key.
Postgres RLS is the only authorization layer
Row-level security policies decide who sees what. The app has zero coach_id filters of its own.
Store releases ended lockstep deploys
Store releases end lockstep deploys for good. Schema changes now follow expand-then-contract migrations and RPC overloads, with a server-checked minimum-version gate before store submission.
What it cost
- Deep copies: data duplication; editing a template means reassigning it.
- RLS only: testing has to run against real Postgres roles, and a policy mistake risks a data leak rather than a 500.
- No lockstep deploys: every schema removal becomes a two-step release cycle.
Screenshots


