Phase 38 · Professional Workflows Deep · status: ✅ ALL 4 ARCHETYPES SHIPPED · 2026-05-26 (autonomous overnight)

Professional Workflows Deep

Every one of the 20 professional service categories now has a workflow-shaped CTA that matches how that profession actually transacts. Not 50 bespoke screens — 4 archetype templates that adapt per provider. Founder can tap any provider and the right flow appears.

Captured: 2026-05-26 overnight · Founder reviews mockups + flows in AM iPad pass
4
Archetypes
4
Built · all TSX shipped ✅
20
Categories mapped
42
Providers covered

📋 Kickoff prompt for next session

Open Services on iPad. Tap each of these 4 providers and run the workflow end-to-end:
  1. A HANDYMAN or PAINTER → quote workflow (scope → context → photos → submit → confirm)
  2. A BABYSITTER or HOUSE-CLEANER → booking workflow (date → time → frequency → confirm)
  3. The INTERIOR DESIGNER → discovery workflow (vision + budget → schedule call → confirm)
  4. A YOGA INSTRUCTOR or PERSONAL TRAINER → class workflow (pick session → commitment → confirm)

For each: is the language right? Does the founder-voice copy land? Is "Only on Nabe" sufficiently differentiated (verified-neighbor cue in quote, neighbor-friendly cancellation in class)? Approve, redesign, or tweak per archetype. Then we map any new categories to the 4 archetypes via the CATEGORY_ARCHETYPE map in src/types/services.ts and proceed to Phase 39 (Singles + Vault community-voice editorial).

🎯 The 4 archetypes

Q
Quote-based
Inquiry → custom quote → schedule
Pattern: Thumbtack / Angi / Houzz Pro. Customer describes the job, provider responds with a custom quote because the work isn't scoped from a price sheet.
Categories (7): handyman, painter, electrician, plumber, carpenter, mover, locksmith
CTA on profile: "Get a quote" · Steps: Scope + urgency → property type + "Only on Nabe" verified-neighbor cue → optional photos → submit → confirmation
File: src/components/services/workflows/QuoteWorkflow.tsx
B
Booking-based
Pick a slot, recurring or one-off
Pattern: Calendly / Cal.com / Mindbody. Customer picks an available slot directly — no quote needed because the work is scoped + priced (per-visit, per-hour, per-session).
Categories (6): house-cleaner, window-cleaner, babysitter, dog-walker, pet-sitter, massage-therapist
CTA on profile: "Book a time" · Steps: Date (14-day picker) → time of day → frequency (one-time / weekly / biweekly / monthly) + notes → confirmation
File: src/components/services/workflows/BookingWorkflow.tsx
D
Discovery-based
Brief → consult call → engage
Pattern: Houzz / Behance / Honeybook. High-trust services where the pro vets fit + writes a tailored proposal. No quote until both sides talk.
Categories (2): interior-designer, photographer
CTA on profile: "Start a project" · Steps: Vision brief + budget range + timeline → schedule discovery call (date + format: video/phone/in-person) → confirmation
File: src/components/services/workflows/DiscoveryWorkflow.tsx
C
Class/Session-based
Recurring scheduled sessions
Pattern: ClassPass / Mindbody. Provider runs a fixed recurring schedule. Customer picks a session + commitment frequency (drop-in / weekly / 4-pack / unlimited).
Categories (5): tutor, music-teacher, personal-trainer, pilates-instructor, yoga-instructor
CTA on profile: "Join a session" · Steps: Pick recurring session (category-specific options) → commitment (drop-in / weekly / 4-pack / unlimited) → confirmation
File: src/components/services/workflows/ClassWorkflow.tsx

🗺️ Category → archetype map (founder review)

Source of truth: CATEGORY_ARCHETYPE in src/types/services.ts. Tap any row in the live app to test the flow.

Category Archetype CTA label Reasoning
Handyman Quote "Get a quote" Job scope varies; per-hour or per-job pricing depends on what they find
Painter Quote "Get a quote" Room count, prep work, paint grade all change quote — site visit common
Electrician Quote "Get a quote" Permit + complexity + materials variable; quote-first norm
Plumber Quote "Get a quote" Emergency calls + scoped repairs both need photos to estimate
Carpenter Quote "Get a quote" Built-ins, shelving — custom by definition
Mover Quote "Get a quote" Volume + distance + stairs vary; quote first
Locksmith Quote "Get a quote" Lockout vs rekey vs deadbolt install — different pricing
House Cleaner Booking "Book a time" Square footage → flat rate; pick date directly
Window Cleaner Booking "Book a time" Per-window or per-visit pricing standard
Babysitter Booking "Book a time" Per-hour, ad-hoc slots — typical for neighborhood babysitting
Dog Walker Booking "Book a time" Per-walk rates; recurring weekly common
Pet Sitter Booking "Book a time" Per-visit / per-night flat rates
Massage Therapist Booking "Book a time" 60/90 min sessions; price per-session
Interior Designer Discovery "Start a project" High-trust; fit matters; pros vet client before quoting
Photographer Discovery "Start a project" Editorial / portrait / wedding work — style fit matters; portfolio-led
Tutor Class "Join a session" Recurring weekly; commitment-based
Music Teacher Class "Join a session" Weekly lessons; same teacher relationship long-term
Personal Trainer Class "Join a session" 1-on-1 or partner sessions; recurring is the norm
Pilates Instructor Class "Join a session" Mat + reformer classes on a published schedule
Yoga Instructor Class "Join a session" Vinyasa / power / slow flow on recurring schedule

✅ Decisions locked

⬜ Open questions for founder AM review

🏗️ Architecture

src/types/services.ts
├── WorkflowArchetype = 'quote' | 'booking' | 'discovery' | 'class'
├── CATEGORY_ARCHETYPE: Record<ServiceCategoryId, WorkflowArchetype>
└── (unchanged) ServiceCategoryId, ServiceProvider, etc.

src/components/services/
├── ServicesContainer.tsx        — grid of categories (unchanged)
├── ServiceCategoryListing.tsx   — provider list per category (unchanged)
├── ServiceProviderDetail.tsx    — UPDATED: picks archetype, renders archetype-specific CTA + workflow drawer
└── workflows/                   — NEW directory
    ├── BookingWorkflow.tsx      — 4-step booking flow (date → time → frequency → confirm)
    ├── QuoteWorkflow.tsx        — 3-step quote flow (scope → context → photos → submit → confirm)
    ├── DiscoveryWorkflow.tsx    — 3-step discovery flow (brief → consult schedule → confirm)
    └── ClassWorkflow.tsx        — 3-step class flow (session pick → commitment → confirm)

All 4 workflows share the same patterns: gradient hero header with provider avatar + step badge, step-aware sticky action bar with Back / Continue / final-state Done, summary rows on confirmation step, lucide icons throughout (no emoji glyphs per DESIGN_STANDARDS), warm gradient cards for "Only on Nabe" cues.

📜 Phase 38 commits

feat(38) archetype-aware workflow drawers for all 20 service categories (1617+ insertions, 4 new TSX files, 1 type + 1 component edit)