Systems for businesses whose day stops when software breaks.
crew-sync.ts
// the crew's tablet gets the job,// never the pricesconst { prices, total, ...crewJob } = job;
await tablet.sync(crewJob);
Complete Entry Systems and Services · Commercial doors, glass and access control
In production
One system for the office, the truck and the customer.
Replaced a scheduling board, an inspection app and paper forms with one system: an office app, a tablet app for crews that works offline, and a portal where customers approve and sign quotes. Connected to the Sage 300 accounting they already run.
work-order.ts
// an accepted quote becomes the shop's// work order: nobody types the spec twiceconst order = await toWorkOrder(quote);
Visser Manufacturing · Door manufacturing
Built
Quoting and the shop floor, in one system.
An operations system covering quoting and shop-floor workflow for the manufacturer that builds the doors.
outreach.ts
// never cold-email someone who's// already a clientconst sendable = prospects.filter((p) =>
!clientDomains.has(domainOf(p.email)));
Sign Service Butler · Real-estate sign installation
Built
An operations platform, and an outreach engine that can't misfire.
A rebuilt platform for installer scheduling, the agent portal and billing, plus an email outreach engine that makes it impossible to cold-email someone who's already a client.
enquiry.ts
// save first, then notify: if the email// fails, the enquiry is still thereconst id = await enquiries.insert(form);
await notify(id).catch(() => retry(id));
Off a dead CMS, onto a quote pipeline that can't lose an enquiry.
A new site moved off an abandoned content system, with the quote pipeline rebuilt so no enquiry gets lost in transit.
lead-form.ts
// phone numbers arrive in every format:// keep the digits, never reject the leadconst raw = String(form.get("phone"));
const phone = raw.replace(/\D/g, "");
Everlast Stucco · Stucco and parging
Live
A website that catches every lead.
A website and lead capture for a stucco and parging contractor. The smaller end of the work, and it still has to catch every enquiry.
We also run three products of our own. See Products.
Tell us what breaks.
A thirty-minute call and an honest answer about whether software fixes it.