At work 2025-now
Multi-tenant website platform
Architect and main developer
One code base runs many customers' websites, each with its own domain, look and pages. Customer staff edit pages without a developer.
01 The problem
Many customers each need their own public website, with their own domain, look, pages and search. All of these sites had to run from one code base. Customer staff also needed to change pages without waiting for a developer.
02 What I built
- 01
Tenant gate
Looks at each web request and picks the right customer site, so one code base can safely serve every site.
- 02
Caching system
Keeps pages fast with caches in layers, in the app and at the network edge, each with clear rules for when saved data is too old.
- 03
Edge routers
A small Go proxy and an edge worker send each request to the right site, and another edge worker serves images from cloud storage.
- 04
Page builder
Customer staff build pages from ready blocks, and any AI edit to a page is checked against the page version and a validator before it is saved.
- 05
Page move test kit
Moves old hand-coded pages into the page builder safely. It compares old and new pages pixel by pixel, by page structure and box by box, so even a small layout shift is caught.
- 06
Content system
A headless content system (it keeps the content, other apps show it) puts each new site on the least-busy database and finds it again fast with a cached map.
- 07
Local landing pages
Builds one page per nearby city for each customer with no copied or made-up text: every number is checked against real data, and pages that are too alike are caught.
03 How it works
- 01A visitor opens a customer's web address.
- 02Edge routers and a site gate pick the right site.
- 03Pages come from caches in layers, so they load fast.
- 04Customer staff build pages from ready blocks.
- 05AI edits to a page are checked before they are saved.
04 Result
- New customer sites go live from shared code.
- Customer staff change their own pages without a developer.
- Old pages move into the page builder with checks for layout shifts.
- Local city pages show only numbers checked against real data.
Stack
- Next.js
- React
- TypeScript
- Redis
- Cloudflare Workers
- Go
- WordPress
- Playwright
Get in touch.
Working on a platform, a backend or AI agents? Tell me about it.