Off a no-code platform, onto something he owns
The first version lived on Base44, a hosted app builder. It worked until it had to be a real site: a custom domain, control over performance, and no vendor between the owner and his own content. We rebuilt it as a static Next.js site and kept the one piece of dynamic behavior, the invitation form, as a small Cloudflare Worker. The result costs almost nothing to run and nothing is locked up.
