Wishdeal Factory · Storefront
Operator interview · $75/hr · Roll Digital's seat
← Back to Stride

How Caleb would build Stride.

First-person from one of our chief operators. What he'd ship and how, AI-amplified. Stack, hour estimate, day-by-day plan, the parts that are hard, and the handoff. Synthesized from the agent spec.

How I'd build Stride

I'd reach for Next.js on the frontend, FastAPI on the backend, Postgres for the data layer, and Stripe for billing. I'd use Twilio for SMS check-ins, Resend for email, and Vercel plus Railway for hosting. All in, I'm estimating 140-160 hours to get to trial-ready: auth, multi-tenant separation, scheduling, check-in forms, progress tracking, client comms, and Stripe wired across three tiers. That's roughly three weeks of full-time work, or four to five weeks if I'm splitting time.

Day-by-day plan

  • Day 1: Provision Postgres schema (users, coaches, clients, workouts, check-ins, billing). Set up Clerk for multi-tenant auth and JWT validation.
  • Day 2: Stripe products and pricing tiers. Wire webhook handlers for subscription changes and dunning logic.
  • Day 3: Next.js app scaffold. Login flow, coach signup, client invite flow.
  • Day 3-4: Coach onboarding wizard. Name, photo, bio, first client invite, calendar integration handshake (Google Calendar read, or Zapier integration later).
  • Day 5: Scheduling core. Calendar view, new workout creation, repeat rules, timezone normalization. Use date-fns for this.
  • Day 5-6: Check-in system. Form builder (exercise name, reps, weight, notes, photo upload to S3). Notifications via email and SMS (Twilio).
  • Day 6-7: Client messaging. In-app chat, message history, Resend for email digest, Twilio for SMS alerts so coaches stay responsive.
  • Day 7-8: Progress tracking. Charts (gains in weight lifted, rep PRs), photo gallery, trend lines. Lightweight analytics for the coach dashboard.
  • Day 8: Admin dashboard for coaches. View all clients, filter by check-in status, export data, trial expiration warnings.
  • Day 8-9: Email sequences. Trial start, check-in reminder, NPS survey, conversion offer (annual discount).
  • Day 9: Comprehensive testing. Multi-tenant isolation tests, Stripe edge cases (downgrade, cancel, failed payment recovery).
  • Day 10: Deploy to Vercel and Railway, set up monitoring (Sentry for errors, basic Postgres monitoring), document the runbook.

What's hard about this build

Multi-tenant data isolation is the technical landmine. I need to ensure every query filters by the coach's ID without exception, or a bug leaks one coach's clients to another. Timezone handling across global coaches is another footgun: a coach in London and a client in LA need the check-in to arrive at the right local time, not UTC. Twilio and email delivery reliability matter for the growth loop: if check-in reminders don't land, coaches won't see it as reliable. The schema also needs audit trails so coaches can see when clients submitted check-ins and if anything was edited, reducing friction if trust issues come up. And the hardest part isn't technical: it's that coaches are tool-resistant, so an overly automated experience (robotic check-in language, no personalization hooks) will feel hollow and trigger churn.

What's fast because of AI

Claude accelerates the work significantly. I use it to enumerate edge cases in the Postgres schema: what happens if a coach downgrades mid-month, a client deletes their account, a check-in is scheduled for a deleted workout. It scaffolds Next.js components (data tables, modals, forms) in minutes instead of hours. Copywriting for the product UI - the check-in prompts, email subject lines, onboarding tooltips - Claude drafts these so they feel coach-friendly, not robotic. API endpoint logic and validation rules: I describe the intent and Claude writes the FastAPI handlers and request validators, cutting boilerplate. Testing is faster too; I describe a scenario and Claude writes the pytest cases. Debugging integration issues (Stripe webhook mismatches, Twilio retry logic) is faster when I paste logs and Claude spots the pattern.

How I'd hand it off

I'd record a 15-minute Loom walkthrough covering the deploy pipeline, environment variable setup, and how to scale Postgres. I'd create a Linear runbook: common tasks like "add a coach," "debug a failed payment," "reset a trial." I'd stay on a 30-day pager rotation for critical issues (zero Stripe revenue or auth going down). I'd transfer all credentials: Stripe API keys, Twilio account, Postgres backup setup, Vercel and Railway access. From there, the next phase is growth: Instagram/TikTok content, cold DMs to coaches with 200-5k followers, and 1-on-1 calls with early users to understand what's blocking adoption vs. what's working.

Hire Caleb to build this for you.

Stride is available to own for $200 flat. Or pay $75/hr for a Roll Digital chief operator to build it for you, AI-amplified.

See pricing →