RLRoman Levchenko
WorkHow it's builtAI workflow
Get in touch
← All work

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

VisitorEdgeSiteServicesDataCustom domainthe artist's own siteMiddlewarehost → site, edge configsites/[site]per-tenant routesVisual pagesregistered componentsBFF APINext.js route handlersWalletsEVM and BitcoinPostgresPrisma models
  1. Custom domain — the artist's own site
  2. Middleware — host → site, edge config
  3. sites/[site] — per-tenant routes
  4. Visual pages — registered components
  5. BFF API — Next.js route handlers
  6. Wallets — EVM and Bitcoin
  7. 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

  • Tenants resolved at the edge

    Middleware maps the incoming host to a site and reads per-site settings from Edge Config, so one deployment serves every artist.

    Trade-off Edge Config has size limits, so heavy settings stay in the database.

  • Pages built visually

    Engineers register real code components in Plasmic, and non-engineers assemble pages from them.

    Trade-off Every new component needs a registration and sensible props.

  • Contracts deployed from the browser

    The Creator Hub deploys the artist's contract from their own wallet, so there is no backend deployer key to protect.

    Trade-off Deployment depends on the artist's wallet and gas.

  • EVM and Bitcoin side by side

    EVM wallets and Bitcoin wallets live side by side, so Ordinals drops sit next to EVM collections.

    Trade-off Two wallet stacks to keep working.

05 / Hard problems

Hard problems

  1. 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.

  2. A visual builder at scale

    Registering 146 real code components in Plasmic with props safe enough for non-engineers to assemble pages from.

  3. Two wallet ecosystems

    Supporting EVM and Bitcoin wallets side by side, from Ordinals tiers to mint pricing with print vouchers.

← PreviousSearch you can trust on a live-commerce platformNext →Turning an AI writer into a managed service

© 2026 Roman Levchenko · Warsaw, EU

Built with Next.js, NestJS and Postgres on Railway. See how it's built

  • LinkedIn
  • GitHub
  • Upwork