Skip to content
All guides

Launch and publish·Updated September 19, 2026·5 min read

How to connect a custom domain

Publish, add the CNAME, verify. Under two minutes when DNS behaves — and the three DNS mistakes that account for almost every failed verification.

Reference documentation

Every project has a preview URL from the moment its sandbox is ready, but the preview is for development: it is tied to the sandbox, it rotates on restart, and only you can load it. A custom domain sits on top of a published build, so publishing comes first.

Publish first

Project menu → Publish. Pick a slug, Vibely runs the production build, the output is uploaded to a static origin behind Cloudflare, and the URL is live in under 30 seconds. Every account gets a free <your-slug>.vibelyagent.com; the slug is global and first-come, first-served, and you can change it later (the old one is released). Publishing, re-publishing and custom domains are not metered — they cost no credits.

Add the domain

  1. Project menu → DomainsAdd domain.
  2. Add the CNAME record Vibely shows you at your registrar. The typical setup points app.example.comcname.vibelyagent.com.
  3. Click Verify. Vibely checks the record, provisions a TLS certificate through Let's Encrypt, and switches your published URL over. Provisioning usually finishes in under two minutes.

Apex domains

example.com with no subdomain cannot take a CNAME. Use ALIAS or ANAME if your DNS provider supports it; otherwise redirect the apex to www at the registrar and point www at us. This is a DNS limitation, not a platform one — it applies wherever you host.

When Verify fails

  • DNS has not propagated. Wait five minutes and retry. This is most of them.
  • A leftover A or AAAA record at the same name. Remove it — a stale record from a previous host wins over your new CNAME.
  • Cloudflare proxying is on. Turn the orange cloud grey for that record. We provision our own certificate at the edge, and the proxy gets in the way of that.

Two things to do the moment it verifies

  • Update your auth redirect URLs. If your app has sign-in, add the new domain in your Supabase dashboard under Authentication → URL Configuration and set Site URL to it, or every OAuth and confirmation-email round trip still lands on the old host. See adding Google sign-in.
  • Decide who can load it. A published app can be public, restricted to your workspace, restricted to named member groups, or private. That is a separate setting from who can open the project in the editor, and separate again from a share link.

Build it while it is fresh

Vibely builds web apps and native iOS and Android apps from the same chat — the mobile ones run on a real handset over Expo Go before they ever reach a store.

Start from a template

Keep reading