CrewCast In development
Build story · 13 sessions · May 2026

From idea to waitlist-ready
SaaS in 13 sessions

A full-stack product built from scratch — React, Supabase, Twilio SMS, A2P compliance, Stripe billing, and production deployment. Documented decision by decision.

13
Build sessions
Full stack
Frontend to SMS infra
Waitlist
Taking early signups
Live
getcrewcast.app
The problem

Storm's coming. Your crew phone
doesn't cut it.

Snow removal and landscaping companies face the same crisis every storm season: they need to staff 20+ workers across multiple sites by 6 AM, and the tools for doing that are a personal phone, group texts, and hope. Phone calls go to voicemail. Group texts get ignored. Owners spend two hours coordinating and still show up shorthanded.

The enterprise tools that could solve this — scheduling platforms, workforce management systems — are built for companies with HR departments, not a crew of 30 guys who just want a text.

The insight: workers don't need an app. They need a text. The owner needs the dashboard. That's the whole product.
What I built

Every layer, from scratch

CrewCast is a full-stack SaaS — not a prototype. It has real auth, real billing, real SMS infrastructure, and real security. Every decision is documented in the engineering learnings doc across 13 build sessions.

SMS dispatch pipeline
Twilio + Supabase Edge Functions. A2P 10DLC registered. TCPA compliant by design. Fuzzy reply parser handles "yep", "yeah im in", and "nope".
React dashboard
Live reply tracking, site staffing by role, worker tier system (A/B/Pool), and a single-glance status headline for ownership-level decisions.
Auth + multi-tenancy
Supabase Auth with Row Level Security across all tables. Multiple companies in one database, fully isolated. Penetration tested post-implementation.
Stripe billing
Three pricing tiers — Crew, Operator, Fleet. Monthly and annual billing. Stripe tied to company, not individual user. Payment links wired to pricing page.
Marketing site
getcrewcast.app — standalone React site with OG tags, waitlist capture via Supabase, pricing page, FAQ, and Vercel deployment.
Security sweep
RLS enabled across 19 tables. Twilio HMAC-SHA1 signature validation on every inbound webhook. Rate limiting on SMS blast. .env hygiene verified.
Tech stack

One platform per job

Every tool was chosen to minimize dependencies and maximize what one person can ship. Supabase handles 90% of the backend — database, auth, realtime, and edge functions — without a separate server.

React + ViteFrontend — inline styles, no Tailwind
SupabasePostgres + RLS + Edge Functions + Auth + Realtime
TwilioSMS — one dedicated number per company
StripeBilling — 3 tiers, monthly + annual
VercelDeploy — two projects: marketing + app
CloudflareDNS + email routing (legal@getcrewcast.app)
The build

13 sessions, documented

Every session had a scope. Every decision was logged. The result is a living engineering learnings document covering stack choices, security patterns, SMS compliance, deployment gotchas, and product decisions — the kind of thing that takes most teams months to accumulate.

S1–S2
Stack decisions & initial scaffold
S3–S4
Database schema & RLS patterns
S5–S6
SMS pipeline & Twilio integration
S7–S8
Dashboard UI & site staffing
S9
Auth & multi-tenant isolation
S10
Security sweep — 19 RLS policies
S11
Marketing site & OG tags
S12–S13
Stripe billing & production deploy
What this taught me

Building outside your lane
sharpens everything

My day job is HRIS infrastructure — UKG, Cognos, Power Automate. CrewCast pushed me into full-stack product engineering: database design with real security constraints, SMS compliance regulation, React component architecture, Stripe billing logic, and production deployment.

The skills transfer more than expected. RLS patterns in Supabase and data integrity in UKG are the same problem — who can see what, and how do you enforce it at the data layer. A2P 10DLC compliance and payroll compliance both require understanding regulatory timelines and building systems that are compliant by construction rather than by policy.

Building a product from zero also forces decisions that enterprise tools abstract away. Every architectural choice is yours — which means every failure is a clear learning.


See it live or
get in touch

CrewCast is taking waitlist signups ahead of its first paying customers. Or reach out if you want to talk HRIS, automation, or product building.