W04 / Case study
One deployment, many artist storefronts
Multi-tenant Next.js on custom domains with per-site config at the edge, and a visual builder for non-engineers.
- Client
- LiveArt
- Role
- Full-stack engineer, top contributor to the web3 platform
- Period
- 2022 — 2025
- Stack
- Next.js
- Vercel Edge Config
- Plasmic
- wagmi / viem
- Prisma
- Bitcoin Ordinals
- components registered for visual page building
- 146
- page routes in the multi-tenant site tree
- 57
- data models behind the backend-for-frontend
- 26
01 / Context
Context
LiveArt's NFT and creator platform: drops and collections, minting, staking and claiming, Bitcoin Ordinals, quests and airdrops with an art-price prediction game, and a Creator Hub where artists deploy their own contracts and launch branded sites on their own domains.
02 / Problem
Problem
Every artist wanted a branded site on their own domain, and non-engineers needed to build pages without waiting for a developer. One deployment per artist would not scale, and hand-coded pages would bottleneck on the engineering team.
03 / Architecture
Architecture
- Custom domain — the artist's own site
- Middleware — host → site, edge config
- sites/[site] — per-tenant routes
- Visual pages — registered components
- BFF API — Next.js route handlers
- Wallets — EVM and Bitcoin
- Postgres — Prisma models
The middleware maps any host to a site and reads its settings at the edge, with no database call.
04 / Key decisions
Key decisions
05 / Hard problems
Hard problems
Tenants within Edge Config limits
Resolving every host to a site at the edge while keeping per-site settings small enough for Edge Config, with heavier data left to the database.
A visual builder at scale
Registering 146 real code components in Plasmic with props safe enough for non-engineers to assemble pages from.
Two wallet ecosystems
Supporting EVM and Bitcoin wallets side by side, from Ordinals tiers to mint pricing with print vouchers.