KrexelBlogHome

Take a v0, Bolt, or Lovable site to a custom domain

Export a v0 / Bolt / Lovable project as static files, deploy it to a custom domain in under 5 minutes. No Vercel lock-in, no Next.js gymnastics.

Taking a v0, Bolt, or Lovable site to a custom domain means exporting the static build, deploying it to a host that lets you point your own DNS at it, and giving the AI agent tools to keep editing the live site. The whole flow takes under 5 minutes and works with any of the three AI site-builders.

The fastest way to ship a custom-domain site from an AI builder is to skip Vercel entirely. Here's the workflow.

Step 1 — Export from the AI builder

The export shape differs per tool, but all three produce static files.

v0: Click the project → "Code" → "Download ZIP". The ZIP is a Next.js project. The interesting files live in app/, components/, and public/. You will need to run a build step before deploying.

Bolt: Click the project → "Export" → "Download ZIP". The ZIP is a Vite/React project. Build with npm run build to get the dist/ folder.

Lovable: Click the project → "Export" → "Download ZIP". The ZIP contains a pre-built dist/ folder. No build step needed. This is the fastest of the three.

Step 2 — Install Krexel and log in

npm install -g krexel
krexel login

This gives you a CLI and a token. The token is saved to ~/.krexel/auth.json and is good for 90 days.

Step 3 — Deploy the exported files

For v0 (Next.js, needs build):

cd your-v0-project
# Add this to next.config.js:  output: 'export'
echo "output: 'export'" >> next.config.js
npm install
npm run build
krexel deploy --dir out --domain yourdomain.com

For Bolt (Vite, needs build):

cd your-bolt-project
npm install
npm run build
krexel deploy --dir dist --domain yourdomain.com

For Lovable (pre-built):

cd your-lovable-project
krexel deploy --dir dist --domain yourdomain.com

The krexel deploy command uploads the directory, runs a final validation, and assigns the site to yourdomain.com. First deploy takes 30-60 seconds. Subsequent deploys from the same project take 8 seconds.

Step 4 — Point your domain

In your DNS provider (Cloudflare, Namecheap, Route53, GoDaddy, Porkbun, etc.):

  1. Add a CNAME record for www pointing to <your-site>.krexel.app
  2. Add an ALIAS or CNAME for the apex (@) pointing to the same target. If your provider doesn't support ALIAS, use an A record to 192.0.2.1 (placeholder) plus the CNAME — or move DNS to Cloudflare (free) which supports both shapes.
  3. Save. DNS propagation is 5-60 minutes.

Krexel detects the CNAME and provisions a Let's Encrypt certificate automatically. HTTPS is live within 60 seconds of the DNS resolving.

Step 5 — Add the MCP server so the AI can keep editing

The whole point of moving off Vercel is that the AI can edit the live site from the chat. Add the MCP server:

claude mcp add --transport stdio krexel -- krexel-mcp

Now in your AI client (Claude Code, Cursor, Windsurf, Continue, etc):

"Read the live about page and add a section about our new partnership with Acme Co. The section should have an H2, a paragraph, and a small button linking to https://acme.example.com."

The AI calls get_current_site → reads the about page → calls patch with the new section → the change is live in 8 seconds. No git, no PR, no manual deploy.

What this replaces

The standard "v0 to custom domain" flow before Krexel:

  1. Export from v0
  2. Push to GitHub
  3. Sign up for Vercel
  4. Connect the GitHub repo
  5. Wait for the build
  6. Add the custom domain in Vercel
  7. Copy the DNS records Vercel shows you
  8. Paste them into your DNS provider
  9. Wait for DNS
  10. Wait for Vercel to issue the cert
  11. Hope the cert provisioning doesn't fail (it often does on first try)

That is 11 steps and 30-90 minutes. The Krexel flow is 5 steps and 5 minutes. The big win isn't the 25 minutes saved — it's the fact that step 11 (Vercel cert provisioning) is the most common failure point and the Krexel flow has no equivalent.

When to use v0/Bolt/Lovable vs when to use Claude Code + Krexel

The AI site-builders (v0, Bolt, Lovable) are best for the initial design — they have visual editors, component libraries, and live preview. They're not great at iterative edits because every change requires going back to the editor and re-running their build.

Claude Code + Krexel is best for iterative edits after the initial ship — the AI has read/write tools against the live site, and patches deploy in 8 seconds.

The combination is: use v0/Bolt/Lovable to design v1, export to Krexel for hosting, then use Claude Code (or Cursor, or Windsurf) for ongoing edits via the MCP server. You get the design quality of a visual AI builder and the iteration speed of a CLI.

What you don't get

A few things v0/Bolt/Lovable do that Krexel doesn't:

  • Live preview in the editor. Krexel's preview is the live site. You see the change in 8 seconds by refreshing the URL.
  • Component library browser. You can ask the AI for a component and it will write the HTML/CSS for you, but there's no drag-and-drop library.
  • Pre-built templates. Krexel doesn't ship a template gallery. The AI generates the templates.

If those matter more than iteration speed, stay in v0/Bolt/Lovable and host on Vercel. If iteration speed matters more, the export + Krexel flow is the better trade.

Try it

npm install -g krexel
krexel login
# Then export from v0/Bolt/Lovable, and:
krexel deploy --dir <built-output> --domain yourdomain.com

Five minutes from export to live custom domain. Then add claude mcp add --transport stdio krexel -- krexel-mcp to give the AI editing tools.

Read more

Frequently asked questions

Can I take a v0 site to a custom domain without Vercel?

Yes. v0's export feature produces a static Next.js project. Run `next build` with `output: 'export'` set in next.config, then `krexel deploy --dir out`. The site is on your custom domain in under 5 minutes, with no Vercel account required.

What is the difference between v0, Bolt, and Lovable for export?

All three produce a downloadable zip of static files. v0 exports a Next.js project that needs a build step. Bolt (formerly Bolt.new) exports a Vite/React project that also needs a build step. Lovable exports pre-built static files in a `dist` folder — the fastest of the three to deploy. Krexel handles all three with the same `krexel deploy` command.

Do I lose AI editing capability if I host on Krexel instead of Vercel?

No — you gain it. Vercel does not expose deploy / patch / rollback as tools to AI agents; you would still drive the AI manually through the editor. Krexel exposes those as MCP tools, so once the site is on Krexel, the AI can edit the live site from the chat directly. You can keep using v0 / Bolt / Lovable to design new sections, and use the AI to wire those sections in via patch deploys.

How do I point a custom domain to Krexel?

Add a CNAME record pointing your domain to `<your-site>.krexel.app` through your DNS provider (Cloudflare, Namecheap, Route53, etc). Krexel issues a Let's Encrypt certificate automatically within 60 seconds. Custom domains are free on all Krexel plans including the free tier.

Can I use my existing Vercel domain with a Krexel site?

Yes, if the domain is on a registrar you control (not delegated fully to Vercel's nameservers). Add the CNAME to your registrar, point it to your krexel.app subdomain, and remove the Vercel records. DNS propagation takes 5-60 minutes.

What happens to my v0/Bolt/Lovable templates if I move to Krexel?

Nothing — the templates stay in the editor you built them in. Krexel only hosts the built static output. You can keep iterating in v0 and shipping to Krexel, or move fully to Krexel + Claude Code for ongoing edits.