The whole-system build plan. Each item now carries its phase explanation and the actual tool stack — current and planned.
Each card shows what the phase actually does + the tools driving it. Olive chips = currently in use. Dashed chips = planned/required.
What it does: When a CD (job complete) hits the calendar, parse the address into a JC lookup, pull plan code + community pricing, build a QBO invoice draft, send it to WhatsApp for one-tap approval, then ship the invoice. POs are only consulted for adders/EPOs/CIs — base scope comes from the Plan Catalog.
What it does: Gmail watches for Google Business Profile review notification emails (GBP API is blocked for posting, so we parse the inbox instead). Extract reviewer name + star rating, pick one of ~10 template variants, post via the Gmail-mirrored Q&A or copy-to-clipboard for manual paste. Tracks every review in a Supabase table for measurement.
What it does: Same intake as v1, but instead of picking a template, n8n calls the Anthropic API with the review text + Everly brand voice prompt, generates a custom reply, and routes it through Discord for one-tap approve/edit. Adds per-review personalization without manual writing time.
What it does: FleetSharp records every geofence entry/exit per truck. A nightly n8n flow pulls visits, joins them to public.homes by geofence ID, and writes categorized rows to fleet.job_visits (QA / warranty / service / unscheduled). Unlocks real labor hours per home + per builder.
What it does: Node.js scrapers (suppliers.mjs + sync-sheet.mjs) hit authenticated supplier portals (Hughes/Hajoca SupplyWeb, SupplyHouse, Reece, Ferguson) via Firecrawl browser profiles, pull current prices for tracked SKUs, and write them into MATERIAL INFO. run-logger.mjs appends per-run records to a RUN LOG tab. Open: scheduling cadence not yet resolved.
What it does: Apps Script bound to the EVERLY JOB SCHEDULE calendar walks events → MATERIALS NEEDED → ORDERED MATERIALS → COMPLETED JOBS → BUILDER COMPLETION STATUS. JCPricing.gs looks up SKUs in MATERIALS V2.0 column N (BEST PRICE W/TAX) by PART#. Handles phase codes (CI / RI / TO / TR / TRF) and EPO wrappers.
What it does: Berny fills correct lat/lng for ~132 problem-geocoded homes in the Berny v3 sheet. n8n webhook ingests fixes → updates public.homes → triggers FleetSharp geofence recreation. Restores accurate geofence-to-home matching.
What it does: ~330 rows in public.homes lack community_name. Backfill from OPEN/CLOSED JOBS spreadsheet (where reliable) and from parsed BuildPro PO emails (most durable source — every PO names the community explicitly).
What it does: Move ~/Documents/Claude/Projects/EVERLY IOS/ from local-only to Google Drive Desktop sync so files are reachable from any device. Removes the "I'm not at my laptop" blocker.
What it does: Auto-fill maintenance schedules per vehicle based on FleetSharp mileage + time triggers (oil change at 5k, tires at 50k, etc.). Reminders push to Discord. Foundation for fleet maintenance compliance and IFTA later.
What it does: Central registry of all renewal-driven obligations — TX state plumbing license, GL/auto/WC insurance certs, vehicle registration, OSHA training, Perry Tier III. Each row has expiry date + responsible person. n8n cron checks daily, alerts 60/30/7 days out via Discord.
What it does: Mirror the production materials sheet into public.materials on a nightly cadence. Sheet stays the human edit interface; Supabase becomes the queryable source for invoicing, JC scripts, and the marketing analytics dashboard.
What it does: Every BuildPro PO email names the community explicitly (e.g. "Dominion 70 Lot — 20384.70"). n8n parses subject + body, extracts community_name, and writes to public.homes. Makes POs the durable source of truth for address→community mapping.
What it does: Capture pass/fail per phase per home. New public.inspections table. Intake via Discord one-tap shortcut for crew lead (PASS / FAIL / REDLINE + notes). Optional Gmail parser of builder PM emails as verification layer. Unlocks first-attempt-pass-rate KPI per crew, per builder, per phase.
What it does: Allocate technician drive time using cost-causation rules. New drive_segments table with 5 categories (productive, out-of-area, supply house, non-productive overhead, warranty/callback). Default = destination job; override when prior out-of-town job caused excess return drive. Interim manual timesheet codes until FleetSharp matures.
What it does: Source of truth for 6 brand identities (Plumbing, Pixel & Code, Bookkeeping, Black, Properties, The Everly Group). everly_meta.brands / brand_colors / brand_assets schema seeded. Drive doc as human mirror. Supabase Storage brand bucket holds logo files. Outstanding: real Bookkeeping logo upload (current file is a duplicate of Plumbing).
What it does: B2B CRM for 5–10 builders. marketing.builder_accounts / builder_contacts / builder_pipeline_stages / builder_touchpoints. Retool dashboard for logging calls, meetings, proposals, RFQs. Foundation for tracking builder retention and per-builder revenue growth.
What it does: Cadence flows triggered by pipeline-stage transitions. Monthly portfolio snapshot email (POs handled + on-time %). Quarterly RFQ check-in ("any new communities coming online?"). Bid-win/loss followup. Discord alert when a builder has had zero touchpoints in 60 days.
What it does: B2C CRM for closed homeowners. marketing.homeowner_leads / homeowner_consent / homeowner_segments / homeowner_campaigns. Bridges from public.homes (closing date) → warranty-window leads. SMS consent captured at closing via Quo.
What it does: Time-triggered SMS via Quo. Day 30 = "everything good?" check-in. Day 90 = water heater / softener service offer. Day 365 = annual inspection prompt + Google review request (feeds Review Responder v2). All gated by opt-in consent.
What it does: Retool reading the marketing schema. Builder pipeline value, homeowner conversion funnel (closing → 30d engaged → service booked → reviewed), channel attribution, opt-out rates. Joins to QBO invoices + Google review timestamps for revenue attribution.
What it does: Written strategy living in Drive + mirrored to everly_meta.docs. Positioning, ICPs for each track, channel mix, measurement model, 90-day OKRs. Reviewed at each invoicing-flow ship milestone.
What it does: Post-closing service conversion engine. Receives qualified leads from Marketing CRM (P5). Service booking flow → dispatch → invoice. Replaces ServiceTitan ($900–2500/mo) at ~$50–75/mo on Supabase + Retool + n8n.
What it does: Internal photo archive for jobsite documentation. Crew uploads via Retool Mobile → n8n parses GPS → auto-tags to project (high confidence) or routes to Discord review queue (low confidence). Office searches/comments via Retool Web. ~$50/mo vs. CompanyCam $450/mo. 10-week phased rollout. Pilot with Berny first.
What it does: Metal NFC cards (NTAG213 chips) encoded with cards.everlygroup.org/{name}. Tap-to-card opens a lightweight HTML profile (photo, call/text buttons, builders link). Hosted as static files — URL stays constant, content updated via one curl command. QR sticker backup. Chips left unlocked so cards are reassignable.
What it does: Nightly n8n flow walks JOB FILES/{builder}/{community}/{address}/ recursively, upserts rows in public.homes. Makes Drive folder structure a usable canonical source for address → community mapping (paired with PO parser).
What it does: Track down original Illustrator/Figma source files from the original logo designers across all 6 brands. Current brand_assets are raster PNG/JPEG only. Vector unlocks vehicle wraps, large-format print, and crisper Retool/Wix renders.
What it does: Recreate the missing Python helper that generates EVERLY IOS V1.0 backend pricing from POs + materials master. Caller still exists, callee is gone. Known gap in the JC system pipeline.
What it does: Retool dashboard on market.macro_metro for SA, Austin, Houston, DFW. Permits, starts, closings, inventory, builder market share. Multi-select metro filter + date range. Supports the B2B track: which markets are heating, which builders are expanding, where to chase new accounts.
What it does: Activate the dedicated automation inbox and notify Hyphen to redirect PO emails there. Currently routes through billing@ + scheduling@, which mixes operational and automation traffic.
What it does: Editable Supabase-backed table for ongoing home metadata cleanup (community, plan, coords, geofence ID). Replaces the rotating Berny v1/v2/v3 sheets with a single durable interface.
What it does: Upload Everly brand palettes + logos into Canva brand kits so Canva generation tools apply them automatically when producing customer-facing assets (review responses, builder reports, social).
What it does: Run after invoicing flow ships. Credential rotation across all workflows. RBAC review. Webhook signature/auth verification. Confirm Discord on-failure baked into every flow. Confirm Healthchecks.io heartbeats wired once 3+ flows are running.
Two-track approach: B2B relationships drive revenue today, B2C conversion compounds revenue tomorrow.
Everly's growth has a builder ceiling and a homeowner floor. Build for both, separately.
"Perry-tier reliability, mid-tier overhead. The plumber your construction superintendent doesn't have to babysit."
"We plumbed your house when it was built. We're who you call when something goes wrong — or when you want it to never go wrong."
Tracked but intentionally out-of-scope. Each has an explicit trigger that promotes it back to the roadmap.
Supabase = source of truth. Sheets are the interface layer. Backend data lives in everly_meta, never in MD files.
Quo = customer SMS. Discord = internal/crew alerts. WhatsApp = approval flows. Twilio is out.
Discord on-failure baked into every n8n flow from #1 onward. Healthchecks.io heartbeats once 3+ flows run.
Maximum autonomy. Skip approval theater. Pause only on architectural choices, destructive actions, costs, or physical/credential blockers.
No scraping, no headless browsers for review responses. If a vendor blocks the API, pivot to a notification-email pattern. (Supplier scrapers via Firecrawl with explicit auth are the only sanctioned exception — internal data, not customer-facing.)
Marketing CRM lives in Supabase, sends through n8n + Quo. No HubSpot, no Mailchimp. Same primitives as the rest of IOS.