Alojar uma aplicação criada com IA começa muitas vezes pelo botão «Publicar»: o Lovable, o Bolt, o Replit ou o v0 colocam-na online em poucos segundos, na sua própria infraestrutura. Chega depois o momento de lhe dar o seu domínio, de manter o controlo dos seus dados ou de lhe oferecer um servidor à sua medida. Este guia mostra onde estas ferramentas a alojam, como recuperar o código, de que é feita a aplicação, como instalá-la no seu servidor e o que é preciso para que se aguente.
Por Simon Vasconcelos Lee
Publicado a 6 de novembro de 2026Leitura: 9 minutos
O Lovable, o Bolt e o Replit publicam a aplicação na sua própria infraestrutura, com um clique. Eis o que diz a respetiva documentação, consultada em outubro de 2026:
| Ferramenta | Publicação por predefinição | Back-end e dados | Recuperar o código |
|---|---|---|---|
| Lovable | Um endereço lovable.app, HTTPS incluído; o seu domínio com subscrição paga | Lovable Cloud, construído sobre as bases de código aberto do Supabase | Sincronização com GitHub, GitLab ou Bitbucket, em todos os planos; arquivo .zip com subscrição paga |
| Bolt | Um endereço bolt.host; o seu domínio com subscrição paga | Bolt Database (PostgreSQL), ou Supabase nos planos Pro e Teams | Sincronização com o GitHub; arquivo .zip |
| Replit | Um endereço replit.app, em quatro modos: Autoscale, Reserved VM, Static, Scheduled | Uma base PostgreSQL gerida, e App Storage para os ficheiros | Sincronização com o GitHub nos dois sentidos; arquivo .zip |
O v0 publica num projeto Vercel e gera uma aplicação Next.js (React, TypeScript, Tailwind CSS); o código exporta-se, ou sincroniza-se com o GitHub nos dois sentidos. O Cursor é um editor e um agente de programação instalado no seu computador: o código já lá está, e o alojamento fica inteiramente à sua escolha.
Estes alojamentos integrados foram pensados para publicar depressa. Tanto no Lovable como no Replit, a versão online é um instantâneo, renovado a cada publicação, e o custo acompanha a utilização da plataforma (no Lovable, créditos cobrem a atividade do back-end e a IA; no Replit, o plano Starter inclui uma aplicação publicada, que expira ao fim de 30 dias e volta a publicar-se). Passa-se para um servidor próprio para ter um domínio e dados sob o seu controlo, recursos reservados, tarefas permanentes em segundo plano ou requisitos de conformidade.
O mais seguro é ligar o projeto a um repositório GitHub: cada alteração chega lá em commit, com todo o histórico. No Lovable, a sincronização funciona nos dois sentidos: continua a construir no Lovable enquanto o seu servidor serve a aplicação.
O código não contém o conteúdo da base de dados nem os ficheiros enviados pelos seus utilizadores. No Lovable, a base de dados exporta-se a partir do projeto num ficheiro .backup, a restaurar com pg_restore, e os ficheiros do armazenamento descarregam-se à parte. No Bolt, a base de dados pode ser associada à sua própria conta Supabase (planos Pro e Teams).
Abra o ficheiro package.json: diz em que assenta a aplicação e, portanto, o que o seu servidor tem de correr.
| Peça | O que vai encontrar | O que o servidor faz |
|---|---|---|
| Front-end estático | React com Vite, como as aplicações Lovable criadas antes de 13 de maio de 2026 | Serve os ficheiros gerados por npm run build em dist/ |
| Front-end com servidor | TanStack Start (@tanstack/react-start, Lovable desde 13 de maio de 2026) ou Next.js (v0) | Corre um processo Node.js em contínuo, atrás do servidor web |
| Back-end | Supabase, Lovable Cloud, Bolt Database, a base de dados do Replit | Base de dados, contas, ficheiros e funções, no respetivo fornecedor ou no seu servidor |
| Configuração | Um ficheiro .env: endereço do back-end, chaves de API | Fornece estes valores na compilação ou no arranque |
Com o Vite, qualquer variável cujo nome comece por VITE_ é integrada no código enviado ao navegador, no momento da compilação: qualquer visitante a pode ler, e mudar o seu valor exige uma nova compilação. É o previsto para a chave pública do Supabase (sb_publishable_…, ou a antiga anon), feita para o navegador e enquadrada pelas regras de segurança ao nível das linhas (RLS). A chave secreta (sb_secret_…, ou a antiga service_role) ignora essas regras: fica no servidor, sem o prefixo VITE_.
VITE_SUPABASE_URL=https://xxxx.supabase.co
VITE_SUPABASE_PUBLISHABLE_KEY=sb_publishable_xxxx
VITE_SUPABASE_PROJECT_ID=xxxx
Ative o RLS em cada tabela antes de colocar a aplicação online: são as suas regras que protegem os seus dados enquanto a chave pública circula no navegador.
Num VPS com Linux, a colocação online segue sempre a mesma ordem. O Lovable recomenda o Node.js 22 para construir e correr as suas aplicações.
npm install e npm run build. Uma aplicação Vite gera ficheiros estáticos em dist/; uma aplicação TanStack Start constrói-se com NITRO_PRESET=node-server npm run build e arranca com node .output/server/index.mjs, na porta 3000; uma aplicação Next.js arranca com npm run start.index.html em qualquer endereço desconhecido; caso contrário, uma página atualizada responde 404. Para uma aplicação com servidor, transmite os pedidos ao processo Node.js.app.votre-domaine.com {
reverse_proxy 127.0.0.1:3000
}
server {
server_name app.votre-domaine.com;
root /var/www/app/dist;
location / {
try_files $uri $uri/ /index.html;
}
}
Uma aplicação online está viva: as suas dependências recebem correções, a sua base de dados cresce, o seu tráfego muda. O que a mantém rápida e segura cabe numa rotina:
| A acompanhar | O gesto |
|---|---|
| Atualizações | As correções do sistema, do Node.js e das dependências, todas as semanas; npm audit para as dependências |
| Disponibilidade | Uma sonda externa, um alerta e alguém para intervir, também de noite |
| Erros | Lê-los nos registos do navegador e do servidor, e corrigir primeiro os mais frequentes |
| Lentidão | Identificar as consultas pesadas: uma consulta sem índice fica mais lenta à medida que a tabela cresce |
| Certificado e disco | Vigiar o prazo de validade e a ocupação, com margem |
| Cópias de segurança | Restaurar a intervalos regulares, noutra máquina: uma cópia de segurança vale pelo seu restauro |
Esta rotina é o ofício de um administrador de sistemas, e pode ser confiada. Com um VPS gerido, o fornecedor de alojamento mantém o servidor atualizado, supervisiona-o dia e noite e intervém sem esperar pela sua chamada. Acompanha também a sua aplicação de forma proativa (erros, lentidão, consultas pesadas, espaço em disco) e recomenda-lhe a correção: aplica-a com o seu próprio assistente de IA, tal como construiu a aplicação, e mantém o controlo do seu código.
Com um VPS gerido da Simafri, os nossos especialistas ajudam-no a colocar online a aplicação criada com Lovable, Bolt, Cursor ou outro assistente, e depois pilotam o servidor e acompanham a aplicação de forma proativa: atualizações do sistema e de segurança, supervisão 24/7 com intervenção sem esperar pela sua chamada, cópias de segurança cifradas todas as noites fora da máquina. Detetamos erros e lentidão e recomendamos-lhe a correção, que aplica diretamente ou com o seu assistente de IA; a migração é oferecida.
Sim. Mantenha a sincronização com o GitHub: cada alteração feita na ferramenta chega ao repositório, e o seu servidor recupera-a, refaz a compilação e relança a aplicação.
A escolha é sua. O front-end pode correr no seu servidor chamando o back-end no Supabase ou no Lovable Cloud; o back-end também pode ser instalado no seu servidor, com o Supabase autoalojado. Para o back-end integrado do Lovable, os dois destinos suportados são o Supabase gerido e o Supabase autoalojado.
Um front-end sozinho, com o back-end num fornecedor, pede poucos recursos. Se o Supabase correr na mesma máquina, a sua documentação fixa o mínimo em 4 GB de memória, 2 núcleos e 40 GB de SSD, e recomenda 8 GB, 4 núcleos e 80 GB; acrescente o que a própria aplicação consome.
Mantêm a sua conta: as contas e os hashes das palavras-passe fazem parte da exportação da base de dados. As sessões em curso continuam associadas ao antigo back-end, por isso cada utilizador volta a iniciar sessão uma vez, e os inícios de sessão com Google ou GitHub reconfiguram-se com os novos endereços de redirecionamento.
No servidor, numa variável de ambiente sem o prefixo VITE_, lida pelo código de servidor ou pelas funções. Aliás, o Supabase bloqueia as chaves secretas enviadas a partir de um navegador (resposta HTTP 401); uma chave exposta por engano elimina-se e substitui-se de imediato.
Simafri
Vamos falar do seu projeto
Diga-nos em poucas palavras o que precisa: respondemos-lhe rapidamente.
Obrigado! O seu pedido foi enviado. Responderemos em breve.
Prefere o email? Escreva-nos para support@simafri.com.