Pular para o conteúdo
Heartscale

boltPublicado em · Equipe Heartscale

Como tirar meu app do Bolt.new e hospedar fora

Para tirar o app do Bolt.new, pegue o código pelo Download ou pelo GitHub, leve o banco para uma conta sua do Supabase com o Claim, recrie os segredos e publique num servidor seu. Por último, mova o domínio. O Bolt confirma que o código é seu; o trabalho está no banco e nas configurações que ficam na plataforma.

Recomendação da Heartscale: leve o Bolt Database com o Claim, nunca com o botão Connect, e só apague o projeto no Bolt depois de conferir os dados na conta nova. Se o app tem usuários reais, login ou funções de servidor, peça uma revisão das regras de acesso do banco antes de virar o domínio.

Antes de começar: o que é seu e o que fica no Bolt

A central de ajuda do Bolt diz que todo código criado com o Bolt e o StackBlitz é seu, inclusive para uso comercial (Corporate and commercial). O código sai inteiro. O resto depende de onde o projeto guarda as coisas:

Parte Onde fica Como sai
Código No projeto do Bolt Download (.zip) ou GitHub
Banco Bolt Database (Bolt Cloud) ou um Supabase conectado Claim para o Supabase ou export de tabelas
Segredos Aba Secrets do banco Recriados à mão
Site publicado bolt.host ou Netlify Novo deploy no seu servidor
Domínio Seu registrador ou comprado pelo Bolt Troca de DNS ou transferência

Descubra qual banco o projeto usa antes de tudo. Clique no ícone de banco no topo da tela, ao centro. O Bolt Cloud cria um banco sozinho quando o projeto precisa (Bolt Cloud). Se o projeto foi ligado a um Supabase seu, o banco já está na sua conta e a mudança fica bem menor.

Passo 1: pegue o código

Há dois caminhos na documentação oficial.

Download do .zip (Manage your projects):

  1. Abra o projeto no Bolt.
  2. Clique no título do projeto, no canto superior esquerdo, e depois em Download.
  3. Descompacte o arquivo.
  4. Com o Node.js instalado, rode na pasta do projeto:
npm install && npm run dev

GitHub (GitHub for version control):

  1. No projeto, clique no ícone do GitHub, no canto superior direito, e em Log in to GitHub.
  2. Clique em Authorize e em Install the GitHub App. Escolha All repositories ou Only select repositories e confirme em Install & Authorize.
  3. Clique de novo no ícone do GitHub, dê um nome ao repositório e clique em Create repository.

O repositório nasce privado, no branch main. O Bolt sincroniza nos dois sentidos: grava um commit a cada mudança que não quebra o projeto e busca alterações do GitHub a cada 30 segundos. Só o dono do projeto conecta e gerencia a integração.

Prefira o GitHub. Ele guarda o histórico e permite que o servidor novo faça deploy a cada push. Dois cuidados da doc: se o Bolt e o GitHub mudarem quase ao mesmo tempo, o Bolt sobrescreve a versão do GitHub. E desconectar o projeto do GitHub não tem volta; para religar o mesmo repositório, só pelo suporte.

Passo 2: leve o banco

O caminho muda conforme o banco.

Se o projeto usa o Bolt Database

A página do banco diz que hoje não há forma suportada de migrar um Bolt Database existente para o Supabase (Database). O botão Connect troca a conexão e pode causar perda de dados (Advanced database settings).

A saída que o Bolt indica para manter os dados é o Claim, que passa o banco para a sua conta do Supabase (Supabase for databases):

  1. Confirme que o Bolt está conectado à sua conta do Supabase.
  2. Abra o projeto e clique no ícone de banco, no topo ao centro.
  3. Abra a aba Advanced e clique em Claim.
  4. Termine as etapas no Supabase.

Depois disso, o banco aparece como um projeto na lista Projects do Supabase. O Claim exige plano Pro ou Teams no Bolt, e você precisa ser dono da organização no Supabase.

Sem o Claim, resta exportar os dados tabela por tabela (Database tables): ícone de banco, abra a tabela, marque a caixa do cabeçalho para selecionar todas as linhas, clique em Export e escolha CSV ou JSON. Isso leva as linhas, mas não a estrutura completa do banco. Faça o Claim sempre que o plano permitir.

Se o projeto já usa um Supabase seu

O banco já está na sua conta e continua lá. Ao apagar um projeto, o Bolt não apaga recursos externos como um Supabase (Manage your projects). Só falta apontar o app novo para ele.

Depois do Claim

O banco passa a ser seu para manter e proteger. Revise as regras de acesso das tabelas antes de abrir o app para o público. Nosso guia de RLS no Supabase mostra como conferir. Na nossa revisão, abrimos cada tabela que veio com o Claim, conferimos se o RLS está ligado e o que cada política deixa um visitante anônimo e um usuário logado ler e gravar.

Passo 3: recrie os segredos e as variáveis

Os segredos do Bolt ficam em ícone de banco → Secrets, e as funções de servidor leem esses valores (Database secrets settings). A própria doc pede que nunca fiquem em texto no código. Anote os nomes de cada segredo e recrie os valores no servidor novo.

Se o app é feito com Vite, vale uma regra do Vite: variáveis que começam com VITE_ entram no código do navegador na hora do build e não devem guardar chaves secretas (Env Variables and Modes). Mudou uma delas? Precisa buildar de novo. Procure no código onde o app lê a URL e a chave do banco e confira se apontam para o projeto certo do Supabase.

Passo 4: faça o build e hospede

Abra o package.json e veja os scripts. Num projeto Vite, npm run build gera os arquivos na pasta dist/ (Deploying a Static Site). O vite preview serve só para testar localmente, não para produção.

npm ci
npm run build
# saída em dist/

Numa VPS com Nginx, copie o dist/ e mande toda rota para o index.html:

location / {
  try_files $uri $uri/ /index.html;
}

Depois, ponha HTTPS. Se preferir um painel, o Coolify instala numa VPS Linux com pelo menos 2 núcleos e 2 GB de RAM e faz deploy a partir do GitHub.

Se o app tem lógica no servidor, ela precisa de um lugar para rodar. Depois do Claim, confira no Supabase se as funções de servidor estão lá: a doc do Bolt não detalha o que o Claim leva além do banco. Uma observação da doc do Netlify no Bolt: a integração hospeda sites só de navegador, sem banco nem backend (Netlify for hosting).

Passo 5: teste antes de virar

Rode o app novo num endereço provisório e confira:

  • Abra uma rota interna direto pelo endereço e recarregue. Erro 404 indica falta do fallback para index.html.
  • Entre e saia do app. Erro de redirecionamento costuma ser a URL nova faltando na lista de retornos do login no Supabase.
  • Leia, grave e envie um arquivo.
  • Chame cada função de servidor e veja se ela encontra os segredos.

Passo 6: mova o domínio

Domínio de outro registrador. No Bolt, ele aponta para site-dns.bolt.host (Connect your domain). Para soltar: ícone de engrenagem → All project settings → Domains & Hosting, três pontos na linha do domínio → Remove domain. Depois, troque os registros no seu provedor de DNS para o servidor novo.

Domínio comprado pelo Bolt. A transferência para outro registrador só abre 60 dias depois da compra. Durante o bloqueio, o Bolt permite mover o domínio para uma conta da Name.com em seu nome (Purchase a domain). A renovação automática fica em Settings → Cloud.

Passo 7: encerre no Bolt

  1. Para tirar o bolt.host do ar, desconecte o domínio próprio e use Publish → Unpublish (Publish your project).
  2. Não apague o projeto antes de conferir o banco novo. Apagar remove de vez os arquivos, o histórico do chat e o Bolt Database, sem volta (Manage your projects).
  3. Não conte com a cópia do projeto como backup do banco: ao duplicar, o Bolt Database leva a estrutura, mas não os dados.

Quanto tempo leva

Um site sem banco é o caso simples: passos 1, 4, 5 e 6. Com Bolt Database, o Claim decide o ritmo. Com login, arquivos e funções de servidor, o teste do passo 5 pede mais cuidado. O mesmo raciocínio vale para outras plataformas, como mostramos no guia como sair do Lovable. Veja também o serviço de migração de plataforma.

Fazer sozinho ou contratar?

Este guia basta quando o app é simples; a tabela mostra quando vale ter uma equipe ao lado.

Situação Caminho
Site sem banco, ou banco já num Supabase seu, e alguém no time que roda npm run build Faça sozinho com este guia
Bolt Database com dados de usuários reais Chame uma equipe para conduzir o Claim e conferir os dados antes de apagar o projeto
Login, pagamento ou dados pessoais no app Peça o diagnóstico da Heartscale antes de virar: banco, segredos, funções de servidor e regras de acesso
Prazo curto ou ninguém técnico no time Contrate a migração com preço fechado

Peça o diagnóstico da Heartscale

Nossa equipe mapeia o que o seu app usa do Bolt: banco, segredos, funções de servidor e domínio. Conferimos as regras de acesso do banco que vai para a sua conta e entregamos o plano de migração com preço fechado.

O diagnóstico de lançamento custa R$ 99 (de R$ 398) e é abatido se você fechar a migração. Só trabalhamos em app de quem prova ser dono.

Pedir o diagnóstico

Perguntas frequentes

Perguntas frequentes

O código que o Bolt.new gera é meu?

Sim. A central de ajuda do Bolt diz que todo código criado com o Bolt e o StackBlitz é seu e pode ser usado para qualquer fim legal, inclusive comercial.

Como baixar o código do meu projeto no Bolt.new?

Abra o projeto, clique no título dele no canto superior esquerdo e depois em Download. O Bolt baixa um .zip; para rodar, descompacte e execute npm install && npm run dev com o Node.js instalado.

Dá para exportar o Bolt Database inteiro?

A tela de tabelas exporta linhas em CSV ou JSON, uma tabela por vez. Para levar o banco inteiro, a central de ajuda indica o Claim, que passa o banco para a sua conta do Supabase e exige plano Pro ou Teams.

Posso conectar meu próprio Supabase a um projeto que já usa o Bolt Database?

Pode, mas o Bolt avisa que conectar um Supabase troca a conexão e pode causar perda de dados. Se o projeto já tem dados no Bolt Database, o próprio Bolt sugere fazer o Claim em vez de conectar.

Os segredos do Bolt vão junto no download ou no GitHub?

Não conte com isso. Os segredos ficam na aba Secrets das configurações do banco e são usados pelas funções de servidor. Recrie cada um no servidor novo, fora do código.

Comprei o domínio pelo Bolt. Posso levar para outro registrador?

Pode, depois de 60 dias da compra. Durante esse bloqueio, o Bolt permite mover o domínio para uma conta da Name.com em seu nome.

Vale a pena contratar alguém para tirar o app do Bolt.new?

Vale quando o app tem usuários reais, login ou dados no Bolt Database, ou quando ninguém do time lê o código. A Heartscale faz um diagnóstico de lançamento por R$ 99 (de R$ 398), abatido se você contratar a migração em 15 dias.

Comece pelo diagnóstico.

O diagnóstico custa R$ 99, pagos por Pix. Entregamos o relatório em 2 dias úteis e apresentamos os resultados em reunião. O valor é abatido se você contratar o serviço em até 15 dias. Tudo o que configuramos fica no seu nome.

Reduz o risco, não o zera. Atendemos somente o dono do app, mediante comprovação.