# Make your Lovable, Bolt or v0 app private to your company

> Canonical: https://teamonly.dev/move-from-lovable-bolt-v0
> Checked 25 October 2026. Written by TeamOnly. We moved four real Lovable and Bolt apps from GitHub to write this.

**Short answer:** If your coworkers already have accounts on the platform, use its own private sharing: it is a setting. If they don't, or you want them to sign in with their work account, move the app to TeamOnly. Run `npx teamonly init` in the exported project and ask your AI tool to "Move this app to TeamOnly". The screens stay the same; Supabase is replaced by a database and login that come with the app.

## Can the platform make it private?

Yes, all three can, on a paid plan. The catch is who has to sign in to what.

| | How to make it private | Plan | Do coworkers need an account there? | Best when |
|---|---|---|---|---|
| Lovable | Invite only (up to 10 people per project) on Free and Pro. Workspace or a custom list on Business and Enterprise. | Workspace-only needs Business, from $50/mo | Yes, a Lovable account | Your coworkers already use Lovable |
| Bolt | Private publishing: your Bolt team, people you invite by email, or anyone at a trusted email domain. | Any paid plan. Not with a custom domain | Bolt's docs don't say | You want to keep building in Bolt |
| v0 (on Vercel) | Vercel Authentication on all deployments, a password, or company sign-in through Vercel Passport. | Password: $20/mo per project on Pro. Passport: Enterprise | Yes for Vercel Authentication. No with a password | Your team already works in Vercel |
| TeamOnly | Every app is company-only from the first deploy. Whole company or a named list. | Builder $19/mo (3 apps) or Team $249/mo | No. Work Google, Microsoft or an emailed code | Coworkers who don't have accounts there |

Sources: [Lovable publishing](https://docs.lovable.dev/features/publish), [Lovable plans](https://docs.lovable.dev/introduction/subscription-plans), [Bolt publishing and private sites](https://support.bolt.new/cloud/hosting/publish), [Vercel deployment protection](https://vercel.com/docs/deployment-protection/methods-to-protect-deployments), [Vercel Passport vs deployment protection](https://vercel.com/kb/guide/vercel-passport-vs-deployment-protection).

## When is moving the app worth it?

- **Your coworkers don't have accounts there.** Asking finance or the warehouse to make a Lovable or Vercel account to use one tool is where most of these apps stall.
- **You want company login, not a list.** Anyone at your company signs in with the work account they already have, and people who leave lose access when IT turns off their account.
- **You want the data and keys locked down for you.** Each app gets its own database, files and secrets, and no request reaches the app until the person has signed in.
- **Your company email isn't on Google or Microsoft.** Emailed codes work for any company domain.
- **You want one bill.** People who only use apps are free, however many there are.

If none of that applies, stay where you are. Moving is real work, and the platform's own sharing is a setting.

## Will my app move?

Moves cleanly:
- React + Vite apps, which is most of what Lovable and Bolt make
- Supabase tables, sign-in, storage and functions
- Lovable's current TanStack template, with server rendering turned off
- Tailwind, shadcn/ui, react-router, charts and other front-end libraries

Moves with more work:
- Large apps: 100+ files, dozens of tables
- Apps with their own password login and user table
- Live updates and chat, which become a Refresh button
- v0 and other Next.js apps: the screens can stay, the server parts are rebuilt

Doesn't move:
- Your existing Supabase data, automatically (export it as CSV)
- Email to people outside your company
- Postgres extensions such as pgvector
- Mobile apps, and apps that must be public

## How do I move it?

You need the project's code on your computer, Node.js, and Claude Code or Cursor.

1. **Get the code.** In Lovable or Bolt, connect GitHub and push the project, then clone it. In Bolt you can also download it as a zip.
2. **Add TeamOnly.** In the project folder run `npx teamonly init` and `npm install`. This adds the files TeamOnly apps need and instructions your AI tool reads. It never overwrites your files.
3. **Ask your AI tool to move it:** "Move this app to TeamOnly". It keeps every screen, rebuilds the Supabase tables in the app's own database, turns security rules into server checks, removes the login screens, and tells you what it changed and what it couldn't move.
4. **Check it on your computer.** It runs the app locally. Click through the main screens.
5. **Put it online:** `npx teamonly login`, then `npx teamonly deploy`. You get a link like `tracker.acme.teamonly.app`. Coworkers sign in with their work account.

## What happens to Supabase?

| In your Lovable or Bolt app | On TeamOnly |
|---|---|
| Supabase sign-in, sign-up and password reset screens | Removed. TeamOnly signs people in before the app loads; the app reads who they are. |
| Supabase tables | The app's own database, created on first deploy (SQLite, on Cloudflare D1) |
| Row level security rules | The same checks, written into each server route |
| Supabase storage | The app's own file storage |
| Edge functions and server functions | Routes in the app's server code |
| API keys in the browser or in `.env` | Secrets, set with `npx teamonly secrets set`, never sent to the browser |
| Admin and manager roles | Roles in TeamOnly, given out on the app's page in the dashboard or with `npx teamonly roles` |
| Email sent through Resend or SendGrid | Email to coworkers, sent by the app through TeamOnly |
| Scheduled functions | Scheduled jobs, listed in `teamonly.json` |
| Live updates (realtime) | A Refresh button |

## What did moving four real apps teach us?

We took four public Lovable and Bolt apps from GitHub, from a 3-table job tracker to a 17-table equipment system, and moved each one. All four kept their screens and run behind company login.

Then a fifth test: in a Lovable helpdesk app it had never seen (120 files, 11 tables), we gave a fresh Claude Code session only the one-line request from step 3. It kept all 15 pages, replaced Supabase, said plainly what didn't come over, and waited for a go-ahead before deploying.

Three of the four had a security problem before the move: one had no login at all; one shipped admin passwords in the code sent to every browser, and its keys in the repository; one let anyone read a ticket by guessing its number. None of that survives the move: TeamOnly checks the login before any request reaches the app, keys become secrets, and every route checks who is asking.

No one-click import. The move is your AI tool doing real work in your project: 15 to 60 minutes for a typical app, longer for a big one. Then it is one command each time you change it.

## Questions people ask

### Are Lovable apps private?
Not by default. A published Lovable app is public unless you change it. On Free and Pro you can limit it to up to 10 invited people per project; limiting it to your workspace needs Business (from $50 a month) or Enterprise. Visitors sign in with a Lovable account.

### Are Bolt projects private?
Published Bolt sites are public on the Free plan. On paid plans you can publish privately: your Bolt team can see it, plus people you invite by email or anyone at a trusted email domain you add. Sites on a custom domain can only be public.

### How do I make a v0 app private?
v0 apps deploy to Vercel, so you use Vercel's Deployment Protection. Vercel Authentication on all deployments lets in people with access to your Vercel team or project. Password Protection is $20 a month per project on Pro. Company sign-in through Okta or Entra (Vercel Passport) is on Enterprise.

### Does my data come over from Supabase?
Not automatically. The app moves with an empty database. If the app has an import screen, export your tables from Supabase as CSV and import them. Otherwise ask your AI tool to add one before you move the data.

### Do my coworkers need a TeamOnly account?
No. They open the link and sign in with their work Google or Microsoft account, or with a 6-digit code sent to their work email. People who only use apps are free.

### Can I keep building in Lovable or Bolt after moving?
Not the moved copy. Once Supabase is replaced, the platform's editor can't run it. Keep changing the app in Claude Code or Cursor in plain English, then run `npx teamonly deploy` again.

### How long does the move take?
For a typical React app, 15 to 60 minutes of your AI tool working in your project, plus you checking the screens. Large apps with dozens of tables and their own password login take longer. The one-minute part is after that: from deploy to a coworker using it.

Try it free for 14 days, no card: https://teamonly.dev/pricing#trial. Or subscribe: https://teamonly.dev/pricing#subscribe (Builder $19/mo, Team $249/mo, Business $899/mo)
