Builders AI Prototype Becomes a Working CRM
The Challenge
Dufour Building Services is an owner-led building and refurbishment firm in Orpington, covering South London and Kent through vetted subcontractors. Its director had designed the system himself, a six-tab job book built overnight in an AI chat, but it could not save a record. EXPRE built the working system behind that design, moved both spreadsheet trackers into it without losing a row, and put it live on the firm’s own domain in 24 days.
Goals & Objectives
Keep the six-tab layout the client designed. Make every enquiry, quote, job, cost and payment persist. Replace both spreadsheet trackers without losing a row or moving a total. Work out what each job is worth and what is still owed from stored records, not a formula kept by hand. Work properly on a phone, on site, in one hand. Put production on the client’s own domain, with a test copy he cannot break.
Our Approach
Imported both trackers first and reconciled every headline total before building on top. Built a PHP 8 and MariaDB back end behind the client’s own front end, reskinned to the Dufour brand. Made an accepted quote promote itself into a job, carrying its budget across. Kept each job’s value in one place, so the calendar, money screens and reports cannot drift apart.
Put an agentic layer on every view, so the assistant can act where the user already is: draft a quote, log a lead, open a job or record an expense on the screen that holds them, rather than sending anyone somewhere else to do it. The same layer reads what is on the screen and suggests what is missing or worth a second look, and answers questions about anything in the book in conversation. On the views that take new records, a typed or dictated sentence is enough: the assistant drafts the enquiry, quote, job or cost and waits for confirmation.
Added additional works, deposits, site addresses and photo attachments to the job form. Reproduced every reported fault on the live system before costing a fix. Put releases behind a script that refuses to deploy if the tests fail.
Key Metrics
Live on the client’s own domain 24 days after the first line of code.
86 jobs and 129 recorded costs moved across, with every headline total matching the original spreadsheets to the penny.
Two spreadsheet trackers replaced by one system the business now runs on.
An agentic assistant on every view, taking quotes, leads, jobs and expenses by voice.
The full job book works on a phone on site, with nothing running off the edge of the screen.
Every release checked by 209 automated tests before it goes out, up from 112.
The Results
The client runs the business on the CRM. Turnover, profit and margin come off stored records, and the margin on finished work is shown apart from the all-work figure, because a live job has taken its value but not all of its costs.
The assistant sits on every screen, so the work gets recorded when it happens rather than at the end of the week. A quote, a new lead, a job or an expense can be added by speaking, on the view where that work already lives, which is what makes the book usable with a phone in one hand on site. The same layer reads each screen and points out gaps and figures worth checking, and any question about the book can be asked in plain English instead of hunted for through filters.
Money owed is now worked out on the same basis as the invoice, which immediately surfaced customers who were being under-chased. A job’s price is written in one place, so a figure changed on a phone stays changed. The whole job book fits a phone screen, so it gets used on site rather than back at the desk, and every release is proved against the test copy and the live one before it goes out.