← All work
Live · runs Optimus Digital Suite, still in build

The Optimus Regulator

The CRM and field-service platform I built to run Optimus Digital Suite after leaving GoHighLevel.

Open a live booking page Code on GitHub
automated tests
3,800+automated tests
contacts moved off GoHighLevel
1,374contacts moved off GoHighLevel
trade profiles: HVAC, plumbing, auto repair
3trade profiles: HVAC, plumbing, auto repair
Google Calendar sync
2-wayGoogle Calendar sync
The problem

I ran five small brands out of GoHighLevel — contacts, website forms, deal pipelines, booking. When I lost access to the account, the work it did still had to happen somewhere, and paying for another all-in-one suite meant paying for a hundred features to use six.

So I built the six, then kept going. The Regulator is live and runs those businesses today: the contact form and the booking calendar on this site both land in it. Texting runs on a carrier-registered business number, an AI receptionist answers new leads, and a field-service module handles dispatch for HVAC, plumbing and auto-repair shops. It is still being built, and the demos for local shops use clearly labeled sample data.

The Optimus Regulator Today tab for Optimus Digital Suite: the growth funnel from found to engaged and a live activity feed, sample data
The Today tab: the growth funnel and live activity. Sample shops and sample numbers.
The Optimus Regulator Outreach tab: the outreach funnel from found to proposal out, with demo activity underneath, sample data
The Outreach tab: who was found, sent a demo, opened it and engaged. Sample shops and sample numbers.
The Optimus Regulator projects board in board view, with Intake, Building, QA and review, and Delivered columns, sample data
Projects in board view, from intake to delivered, with task counts. Sample data.
The Optimus Regulator inbox for Optimus Digital Suite: texts, chat and email in one list, with conversations the AI receptionist finished marked Goal reached, sample data
One inbox for texts, chat and email. The receptionist marks a conversation when it reaches its goal. Sample data.
A demo recorded from the Regulator: an after-hours call to a sample plumbing shop answered by the AI receptionist, with live captions
A demo built for a trade: the after-hours call, answered, with live captions. Sample shop and sample call.
A demo recorded from the Regulator: the dispatch board for a sample plumbing shop, with three technician columns and the booked visit already on the board
The booked visit is already on the dispatch board by morning. Sample data.
A demo recorded from the Regulator: an overnight summary showing calls answered, visits booked, an urgent flag and an 8 second first reply, sample data
The overnight summary a shop owner wakes up to. Sample data.
A demo recorded from the Regulator: a five-star sample review arriving and the shop rating moving up
The review request goes out on its own, and the rating moves. Sample review.
What it does

The parts of an all-in-one CRM I actually used.

Five businesses, one app

Every contact, lead and deal belongs to a business, with a switcher to see one brand or all of them at once.

Leads from any website

Sites post their forms to the Regulator server to server. Spam is filtered into its own tab, and each lead records whether the person agreed to be texted.

Deal boards

A board per business, from New to Won or Lost, with open and won totals at the top.

Booking pages with Google Calendar

Public booking pages show real open times and sync both ways with Google Calendar, so a booking blocks the calendar and a calendar event blocks the page.

Phone alerts

Web push sends a notification the moment a lead or a text comes in, from an app installed on the home screen.

Texting and an AI receptionist

Two-way SMS on a registered business number, with STOP handling. The receptionist answers texts and web chat, books the call, and hands off to a person when it should.

Field service

Dispatch, work orders, technician scheduling and offline status updates, with HVAC, plumbing and auto-repair profiles and their own pipelines.

Apps within apps

The Regulator builds a branded sample workspace for a trade, with sample customers, technicians, a week of service calls and an AI receptionist, then records a narrated walkthrough straight from it. A shop owner can watch a day in their own kind of business before we ever talk. Every name and number in those demos is sample data, labeled on screen.

Proposals

Packages the customer can choose between, revision history, typed accept or decline, and a Stripe Checkout deposit flow verified in sandbox. Live payments are switched off.

Moving out of GoHighLevel

An importer reads GoHighLevel backups, shows a dry run first, and carries over opt-outs — 1,374 contacts from four backups so far.

How it’s built

The decisions that matter, and why.

  1. 01

    The rules don’t know where the data lives

    Every rule sits behind a small storage interface. Tests run it against an in-memory store, and the same store powers a demo mode with sample data — so the app can be shown, or tested, with nothing real behind it.

  2. 02

    Security rules tested inside the test run

    The database schema and its row-level security load into an embedded Postgres during the tests, so a policy that would let one business see another’s contacts fails the build instead of reaching production.

  3. 03

    A dry run before anything is imported

    The importer reports what it would bring over — contacts, deals, skips and opt-outs — before it writes a row, and someone who opted out of texts stays opted out in the new system.

  4. 04

    Sign in with a code, not a link

    Magic links open in the phone’s browser, not the installed app, and looped people back to the login screen. A six-digit code keeps sign-in inside the app on any device.

  5. 05

    Texting built, then held for registration

    Sending, inbound replies, delivery status, signature checks and STOP handling were written first. U.S. carriers require business texting to be registered, so it stayed off until the registration was approved, and only then went live.

  6. 06

    The demo is the real app

    Sales demos are recorded from the running product with scripted scenes and generated voiceover, and a quality gate rejects any take where the receptionist misbehaves. Every number on screen is labeled sample data.

Built with
Next.js 16React 19TypeScriptSupabase (Postgres, auth, row-level security)TwilioClaude APIStripeWeb PushGoogle Calendar APIPGliteVitestVercel
Where it stands

The Regulator runs my businesses today. Next: put it in front of local service shops, starting with HVAC and plumbing, and let a real shop run on it.

Talk about a build like this