AI with AIlabs
← All guides
4 min read

Moving a Project From Lovable to Claude Code Is a Smaller Lift Than You'd Think

What actually changes and what actually stays the same when you migrate a no-code build into full code.


Briefly Brilliant, an LSAT prep app I built in Lovable, hit the point where I needed full control over the code and the deployment. Lovable is great for getting something working fast. It's not built for the level of control I needed next. So I moved it to Claude Code, and I want to walk through exactly what that took, because it was a smaller lift than I expected.

Lovable generates standard React, Vite, and Tailwind under the hood. Nothing exotic to untangle, no proprietary format to reverse-engineer. That mattered more than I realized going in.

The only real setup was environment variables, and this is the part worth being careful with. Lovable connects to Supabase by default. The Supabase project itself stays completely untouched during a migration like this. You're not moving data or rebuilding a database. You're just pointing your local .env file at the same project URL and the same API key Lovable was already using. Same backend, different front door.

Then came the deployment decision. Vercel, not Railway. That distinction matters and it's easy to get backwards if you haven't hosted both kinds of apps before: Vercel is built for a React app that talks out to a service like Supabase. Railway is built for backend servers running persistent processes. Briefly Brilliant is the former. Railway would have worked, technically, but it would have been the wrong tool for what the app actually needed.

Here's the honest summary of what changes and what doesn't. What changes: your dev environment, and your deploy pipeline. What stays exactly the same: the database, every row of data in it, and every line of code that was already written. You're not rebuilding the app. You're changing where you work on it and how it gets shipped.

The migration checklist

  1. Confirm your code is already in a GitHub repo

    Lovable does this by default.

  2. Clone the repo locally, open it in Claude Code

  3. Run npm install

  4. Copy your environment variables

    Point your local .env at the same database project URL and API key you were already using. Don't touch the database itself.

  5. Choose a deploy target

    Vercel for a frontend app talking to a database service, not a platform built for persistent backend processes.

  6. Deploy

The migration is real work, but it's bounded work. Knowing exactly what changes and what doesn't going in is what keeps it from turning into a bigger project than it needs to be.

Get new guides and builds in your inbox

No noise. New artifacts, skills, and lessons when they drop — and early access when agents launch.

next_steps.exe

Want a full structured path instead of one-off guides?

That's Learn AI with AI — a sequenced course that takes you from zero to building real things, with community and accountability built in.

Check out Learn AI with AI →