All work

Dental clinic — two-direction pitch website

A pitch: two complete redesigns of a clinic's site, immersive and professional, without losing search traffic.

Stack:
  • Astro 7
  • Three.js
  • GLSL
  • Node.js
  • cheerio
  • sharp
  • Netlify
  • 219pages in the rebuild, two directions plus a selector
  • 8,918links checked by the build audit, with 0 errors
  • 71blog posts migrated from WordPress

One crawl, one build, two directions

One crawl of the old site and one content source feed two complete designs of the same clinic, immersive and professional, with every old URL kept.

Tap a block to see what it does.

  • People
  • Input
  • Logic
  • Data
  • Output
  • Infrastructure
Research and crawl
Content and old URLs
One Astro build
Two directions
Checks and delivery

People

Brand research

Brand bible from a crawl of 60 pages and their computed styles; the other agency's 17 promises transcribed and answered.

Hands to Astro build

The problem

A private dental clinic had an informational WordPress site, and another agency was pitching a restyle built on a template. My pitch had to show a site that brings in patients, without losing search ranking, old URLs or the blog.

What I built

  1. Researched the brand from a crawl of 60 pages and their computed styles, and answered the other agency's 17 promises one by one.
  2. First version: a custom Node static generator, one content source feeding two directions of 51 pages each, with the logo rebuilt as WebGL particles on the immersive one.
  3. Second version in Astro: crawled the live site, migrated 16 services and all 71 blog posts, and built both directions from the same data, 109 pages each.
  4. Built the immersive direction around a 3D tooth: a scroll-driven camera in three chapters, a pearl material, an exploded view and a button that pauses motion.
  5. Kept the pitch honest: forms only prepare an email, nothing is booked or sent, and every page is noindex.

The hard part

Changing the whole stack without losing search traffic. Old .php addresses are served through 200 rewrites, service slugs match the live site and a migration map covers 109 URLs. A build audit then checked 8,918 links and 959 images with 0 errors.

Result

Two complete, navigable directions on the same brand, delivered as private static bundles ready for Netlify. This was a pitch / proposal: the clinic's current site is not my work.

My role

Solo, with agents. I did the research, set the direction for both variants and reviewed the work, sending the first immersive homepage of the rebuild back for a new direction; Claude Code wrote the first generator and OpenAI Codex the Astro rebuild.