Hey Spotless
Spotless Ops
- AdminBuilt
Dispatch board
Jobs needing a cleaner, what the engine decided for each, idle guaranteed hours, and the week's overtime before you commit it.
- AdminBuilt
Quote builder
Room counts to a price, off the live price book. Shows the opening cleaner offer alongside the customer total.
- AdminBuilt
Price book
The 9 August 2026 pricelist as structured data, including the recurring rates and extras.
- CleanerScaffolded
Today's route
Offers with a countdown, on-my-way, clock in/out with a GPS stamp, room checklists, before/after photos.
- CustomerScaffolded
Portal
Quote acceptance, reschedule and skip, invoice history, saved card, rate-your-clean.
Where this is
Phases 1 and 2 of the build plan, plus the pure logic of phases 3 and 5: the schema with row-level security, the price book, the quote engine, and the dispatch engine — marginal cost, the eligibility gate, the per-hour offer ladder, and route clustering. All of it is covered by tests that assert against the figures published in the build plan itself.
Stripe, Twilio, live Supabase and the Vercel deploy wait on the phase-00 checklist in docs/setup.md. Start the A2P 10DLC filing first — carrier approval takes one to three weeks and it gates everything customer-facing.