Skip to content

Migration guide

Bring your Replit or Lovable app to Evermach

Replit and Lovable are great for getting an idea started. When your app needs a professional team, move your code, database, and hosting to accounts you own, then let Evermach take it from there.

Before you start

  • List every environment variable and secret your app uses. They don't move with your code.
  • Back up your database before you export anything.
  • Pick where the app will run next, such as Vercel, Railway, or your own AWS, Google Cloud, or Azure account.
  • Make sure you can create repositories in the GitHub organization that will own the code.
  • Note any custom domains so you can point them at your new hosting.

From Replit

Replit doesn't offer a self-serve way to move an app off Replit, but its guide to copying a project between workspaces covers the same ground. Here's the short version; follow Replit's docs for every command.

Move your code to GitHub

  1. In your Replit App, open Tools → Git, connect GitHub, and push to a private repository your organization owns. Only committed files reach GitHub.
  2. Turn on Show hidden files and review what you push. .replit and replit.nix hold Replit's run, build, and package settings; .cache holds cached secret values and must stay out of Git.
  3. Want a snapshot as well? Use Download as zip from the file tree's menu.

Move your database and files

  1. Each Replit App has a development and a production PostgreSQL database. Copy the production connection string from Tools → Database → your production database → Settings.
  2. Do a test copy with pg_dump -Fc and pg_restore into your new PostgreSQL database. For the final copy, unpublish the app first so no writes are lost.
  3. Download your files from Tools → App Storage, or use the App Storage SDK's list and download functions from the Replit Shell, and upload them to your own storage bucket.
  4. Off Replit, run migrations yourself, for example by adding drizzle-kit migrate to your build or pre-deploy step.

Move sign-in, integrations, and hosting

  1. Replace Replit connectors and Replit-managed AI integrations with your own API keys. Connections are tied to your Replit account and don't move.
  2. Copy the run and build commands from .replit into your new host's settings, and make sure the app listens on 0.0.0.0.
  3. Recreate your secrets from Tools → Secrets, the production app secrets under Publishing, and any Account Secrets. Replace Replit-only variables such as REPLIT_DOMAINS and REPLIT_DEPLOYMENT.
  4. Disconnect your custom domain in Replit's Domains tool and point its DNS at your new host. Test on a temporary URL first; to roll back, publish the Replit app again.

Watch out for

  • If your app uses Replit Auth, your users sign in with Replit accounts. Replit's documented path is migrating to Clerk, but it doesn't document exporting those users to an account you own, so plan sign-in before you switch.
  • The development database can only be reached from inside the app. Run pg_dump for it from the Replit Shell.
  • Replit's docs disagree on whether development secrets sync to production. Check both lists.
  • Domains bought through Replit transfer through Replit Support, after a 60-day lock from purchase.
  • Replit's official self-hosting (Image Exports) is in early access on Enterprise plans.
  • If you keep Replit's Git sync on while Evermach opens pull requests, Replit doesn't document how the two interact. Protect your main branch, or turn sync off after the move.

Replit documentation: Manually copy a project · Git pane · Database · Connection details · App Storage · Integrations · Authentication · Custom domains

From Lovable

Lovable publishes its own guide to deploying and hosting outside Lovable. Here's the short version; follow their guide for every command.

Move your code to GitHub

  1. In Lovable, open Project settings → Git → GitHub and connect the GitHub account or organization that should own the code. Lovable creates a new private repository and keeps it in two-way sync.
  2. To keep the repository in your company's GitHub organization, connect that organization from the start. Transferring it later keeps sync only if your Lovable workspace is also connected to the new owner.
  3. The repository holds your app, its configuration, and its database migration files. Database records, stored files, and secrets are not included.

Move your database and sign-in

  1. Create a Supabase project. Lovable's backend is built on Supabase's open-source foundation, and managed or self-hosted Supabase is the destination Lovable supports.
  2. Recreate the schema by applying the migration files from your repository in order (supabase/migrations or drizzle/migrations).
  3. Export your data from More → Database → Manage → Settings → Export data, then restore the .backup file with pg_restore. You can export once every 24 hours.
  4. Turn on your sign-in providers in Supabase with your own OAuth credentials. Users keep their passwords but need to sign in again.
  5. Download stored files from More → Storage and upload them to the matching Supabase buckets. Then set your function secrets and deploy your Edge Functions with the Supabase CLI.

Move your hosting

  1. Check package.json. Apps that use @tanstack/react-start (Lovable's default since May 2026) need a host that runs a server; older React + Vite apps build to static files.
  2. On Vercel, Netlify, or Cloudflare Pages, connect the repository, build with npm run build on Node.js 22, and set your Supabase environment variables (VITE_SUPABASE_* for the browser, plus SUPABASE_* server values for TanStack Start).
  3. Re-enter every server secret, add the new URL to your sign-in redirect URLs, and test on a temporary URL before pointing your custom domain at the new host.
  4. When everything works, switch the app to the new backend, unpublish the lovable.app site, and cancel the Lovable usage you no longer need. Exporting code doesn't cancel anything.

Watch out for

  • Secrets in Lovable are write-only. Get each key again from the service that issued it.
  • Lovable AI, connectors, and sign-in managed by Lovable (including Sign in with Lovable) don't move with your app. Replace them with your own provider accounts.
  • Keep .env committed. It holds the public Supabase values your app needs.
  • Removing Lovable's database also deletes its backups and saved exports. Download and verify everything first.
  • If your app already uses your own Supabase project, your data, sign-in, and storage already live there. Move the code and hosting, and replace any Lovable AI or connector calls.
  • If you keep Lovable connected while Evermach works on the same repository, Lovable syncs one branch. Merge Evermach's pull requests into it; protected branches send Lovable's own pushes to a lovable-sync branch.

Lovable documentation: Deploying and hosting outside Lovable · GitHub integration · Git sync · Database export · Secrets · Hosting and ownership

Then connect Evermach

Once your code is in GitHub and your app runs on your own infrastructure, Evermach takes it from there.

  1. Get accessEvermach is in closed beta. Book a demo and we'll set up your organization.
  2. Create a project and connect your repositoryIn project setup, fill in Context, Tech, and Compliance, then connect the GitHub repository you just moved your code to. Evermach analyzes the codebase so every Request starts with real context.
  3. Set up Drift Control™In project Settings, add your business model, top priorities, target users, and finance context, and choose your compliance frameworks. In the Project library, add your Figma files, design guidelines, screenshots, and PDFs.
  4. Install the widgetOpen Install widget, add your app's domain to the allowed origins, and add the snippet to your app. Your users and PMs can start creating Requests from inside the product.
  5. Ship your first RequestApprove a Request and start a build. Evermach opens a pull request in your repository for your engineers to review, improve, and deploy.

Comparing first? See Evermach vs. Replit and Evermach vs. Lovable.

From user vibes to production.

Evermach is in closed beta, with access by demo. See how your team can turn user vibes into reviewed pull requests and move ideas to production magically.

Request a demo

Already a customer? Log in