A WordPress rebuild that keeps all 88 old links and loads at half the weight.
Built for Carlos Ceramics Dental Lab, whose dentists use its website to send cases, set up scanners and check products.

Websites, at work.
- Built
- A custom block theme, a site plugin and every page written from one content script
- Stack
WordPressBlenderRemotionLighthouse
- Timeline
- October 2026, after a three-day audit of the old site
- Status
- Built. It replaces the old site when the lab is ready to switch
- Scale
- 88 old addresses, 8 scanner guides, 7 review rounds
Measured the same way, on the same pages.
The "before" column comes from the audit we ran first. The "after" column is the new build, measured with the same tools.
| Measure | Old site | New build |
|---|---|---|
| Home page weight | 8.1 MB | 4.4 MB |
| Home page requests | 134 | about 40 |
| Phone speed score (Lighthouse) | 19 | 92 |
| Old addresses that still answer | n/a | 88 of 88 (84 permanent redirects) |
| Independent review score | 5 of 10 at round 1 | 8 of 10 at round 7 |
| Forms asking for patient details | some | none |
A slow site that dentists still depended on.

Dentists came to the old site for practical things: how to send a case, which scanner settings to use, what a product is called. It was heavy on a phone, and some of its forms asked for patient details a lab website has no reason to hold.
Replacing it carried its own risk. Years of addresses sat in Google results, in bookmarks and in emails. A new site that broke them would send dentists to error pages on the day it launched.
A theme, a plugin and a script that writes the pages.
Two pieces of code, and one source file for the words. Nothing on the page that the lab did not give us.
A redirect map
Every one of the 88 old addresses found in the audit is sent to its closest new page. 84 are permanent redirects, so search engines move their listings across instead of dropping them.
A content script
build_pages.pywrites every page from one source file. Change a product name once and it changes everywhere it appears.Blender product loops
Short 3D loops of crowns, dentures, an implant, ortho work and veneers, plus a film of a case being packed, made procedurally from open models (CC BY 4.0 and public domain) that are credited on the Terms page.
A site plugin
ccdl-siteholds the redirects and the forms. Forms email the lab and store nothing on the server. None of them asks for a patient's name. They are ready for reCAPTCHA when the lab wants it.A block theme
ccdl: templates, parts and the lab's colors intheme.json, with every color pair checked for contrast. The build has zero contrast failures.Remotion motion clips
Small animated steps that show how a case moves through the lab, made in code so they can be changed without a video editor.
An independent review loop
A different AI model reviewed the build across seven areas, round after round, followed by a deliberately hostile review. We fixed what it found until the only gaps left were things the lab has to supply, like its own photos and wording.
The practical pages, written plainly.
Send a case
Four ways in: the case system, the scanner, a courier pickup form, or FedEx and mail. Packing steps and dated Rx forms.
Connect your scanner
Step-by-step setup for 8 intraoral scanner systems.
Product pages
Flip cards that show each restoration and what it is for.
How your case moves
Eight steps from arrival to the box going back, and a contact form that can ask a technician to call.
Ready to switch on, easy to keep right.

- Launch day is one changeThe redirects ship inside the plugin, so the moment the new site goes up, every old address already points somewhere real.
- Only what the lab saidTurnaround times, prices, staff names and reviews the lab has not given us stay off the site. The reviewer penalised unproven promises, and we removed them.
- Edits in one placeText changes go into the content source and the pages are rebuilt, so wording never drifts between pages.
- Where it standsOn October 6, 71 of the audit's 114 change items were done. The site is built and waits on the lab's go-ahead to replace the old one.
Rebuild the site, keep the trail behind it.
Audit before you design
The redirect map only exists because the audit listed every address first. Any business with an older site should start there. Website audits
Turn phone questions into pages
A distributor's ordering guide, a clinic's "what to bring", a contractor's permit checklist: same idea as the scanner guides. Website rebuilds
Show the product moving
Makers and suppliers can show what they make from their own models, without a photo shoot. 3D product animation
Closest industries: manufacturing & distribution, healthcare & dental, professional services.
The rest of the lab's online work

A read-only audit that measured every page, click and redirect
Carlos Ceramics Dental Lab, before its website was rebuilt
88old addresses checked

A five-kit store with Stripe checkout, built into an existing site
Custom Dental Solutions, selling bur kits to dental offices
5kits, one checkout

A bilingual site where customers build their own print quote
Conception Design, a sign, print and apparel shop in North Miami Beach
EN / ESevery page, both languages
Afraid a new site will break the old one's links?
Send us the address. On a free call we will tell you how many pages it has, how heavy it is, and what a rebuild would keep.
