The problem
Most yoga apps are built for the practitioner mid-class. Teachers and serious students need a different shape: dense reference, fast filters, and a way to compose sequences that holds up the next morning when planning a class. We built for that audience.
What we built
A monorepo with two front-ends. The web app (Vite + React 18) is the discovery surface — pose pages with anatomy, contraindications, common modifications, and progressions. The mobile app (Expo + React Native, SDK 50) is the on-mat surface — offline-capable, sequence playback, and quick capture for new ideas. Shared TypeScript packages keep types and API contracts identical across both. Supabase provides Postgres, Auth, and Storage in one tier.
The filter set is the unfair advantage. Difficulty, body position, style (hatha, vinyasa, yin, restorative), muscle groups engaged, props required, chakras targeted — combinable, fast, and built on the same indexes the sequence builder uses for “find me a pose that connects these two”.
The automation angle
No AI in the product flow today. The interesting automation is in the content pipeline: a CMS-style admin lets teachers contribute poses, and a review queue uses structured checks (image consistency, contraindication completeness, alignment cues) before publishing. The point isn’t LLMs everywhere — it’s shipping a tight, content-rich product, fast.
How it’s used
- Yoga teachers planning classes the night before.
- Studio managers standardising sequence libraries across instructors.
- Serious practitioners who want depth, not gamification.
What it taught us
That Supabase is a small-team superpower when the product shape is “Postgres with auth on top”. We shipped the first usable version in three weeks because the migration story, the auth story, and the storage story were all decided on day one. The savings paid for the time we spent on the offline-mobile experience — which is the actual differentiator.