Zeltro › Lleva tu app de Lovable a Zeltro y sigue construyendo en local
Cómo llevar una app de Lovable a Zeltro
Lleva tu app de Lovable a Zeltro: conecta GitHub, impórtala y sigue construyendo en tu equipo con tu propia IA. Tus datos de Lovable Cloud siguen funcionando, o un solo mensaje los traslada también a Zeltro.
Lovable es muy bueno para llevar una app de la idea a una pantalla que funciona. Pero llega el día en que quieres la app en un lugar que controlas: sin créditos que se gastan cada vez que pides un cambio, sin preguntarte qué pasa si cambia el plan, y con el código en un equipo que es tuyo.
Lovable es inusualmente abierto en esto. Su propia documentación dice que puedes «exportar tu código, migrar tus datos, alojar por tu cuenta parte o la totalidad de tu stack, o pasarte a otro proveedor en cualquier momento». Esta página es la versión práctica, probada de principio a fin con un proyecto nuevo de Lovable en el plan gratuito: qué se va contigo, qué se queda y los clics exactos.
Qué te puedes llevar#
Un proyecto de Lovable son dos cosas, y cada una sale de forma distinta.
| Pieza | Qué es | Cómo sale |
|---|---|---|
| La app | Una app de React en TypeScript. Los proyectos nuevos usan TanStack Start (React con renderizado en el servidor) sobre Vite | Sincronización con GitHub en todos los planes, o Download codebase en los planes de pago |
| Esquema de la base de datos | Archivos de migración en el repositorio | Viene con el código |
| Datos, inicio de sesión, almacenamiento de archivos, Edge Functions | Lovable Cloud, que funciona sobre Supabase | Se queda donde está. La app lo sigue usando desde tu equipo |
El código es la parte fácil, y los tres pasos siguientes lo trasladan. El backend puede quedarse en Lovable Cloud mientras construyes: la app habla con él directamente desde el navegador, así que la copia de tu equipo lee y escribe los mismos datos. Trasladar también el backend es otro trabajo, que se explica más abajo.
Paso 1: conecta tu proyecto de Lovable a GitHub#
- En tu proyecto de Lovable, haz clic en el nombre del proyecto, arriba a la izquierda, y luego en el icono del engranaje para abrir la configuración del proyecto.
- Abre Settings → Git y elige GitHub.
- Lovable te pide instalar su GitHub App. Elige tu cuenta u organización. Puedes darle acceso solo a los repositorios que elijas.
- Lovable crea un repositorio nuevo para el proyecto y lo mantiene sincronizado en ambos sentidos. No sube cambios a un repositorio que hayas creado tú, así que deja que cree el suyo.
Esto funciona en todos los planes, incluido el gratuito. En un plan de pago también puedes elegir Download codebase en la misma pantalla.

Una vez conectado, la misma pantalla muestra el repositorio, In sync with GitHub y una dirección en Clone repository. Copia la de HTTPS: es todo lo que Zeltro necesita.

La sincronización va en ambos sentidos. Los cambios hechos en Lovable se guardan como commits en el repositorio, y los commits que subes a la rama sincronizada aparecen de vuelta en Lovable. Si más adelante la desconectas, Lovable «detiene la sincronización y no cambia nada más»: el repositorio conserva todo su historial.
Paso 2: impórtala en Zeltro#
Zeltro es una plataforma gratuita de desarrollo local: cada proyecto se ejecuta en su propio contenedor, todos los proyectos comparten un mismo conjunto de bases de datos, y tu agente de IA trabaja dentro del proyecto.
En la app Zeltro, haz clic en Añadir proyecto y elige Importar desde GitHub. Pega la dirección, deja seleccionado Seguir trabajando en este repositorio, ponle un nombre al proyecto y haz clic en Importar.

En nuestra prueba tardó unos tres minutos. En ese tiempo, Zeltro:
- instala los paquetes de la app, sorteando el fallo del resolvedor de npm con el que tropieza el conjunto actual de dependencias de Lovable;
- ejecuta el servidor de desarrollo en el puerto desde el que Zeltro sirve los proyectos, pida el puerto que pida la configuración de Lovable;
- le da al proyecto su propia dirección en tu equipo, y otra en tu red para probarlo desde un teléfono;
- hace que tu agente de IA revise la configuración frente al repositorio.
Los archivos propios de Zeltro quedan fuera del historial del repositorio (van en
.git/info/exclude, no en el .gitignore del proyecto), así que nada de Zeltro se
sincroniza nunca de vuelta con tu proyecto de Lovable.
Lo mismo desde una terminal:
zeltro clone work-directly https://github.com/you/your-lovable-app.git lend-tracker
zeltro status lend-tracker
Paso 3: abre una sesión de IA#
Selecciona el proyecto y abre una sesión de IA. Se abre en la pestaña Terminal, donde arranca tu agente, con tu app funcionando al lado en la pestaña App.
La primera vez que tu agente abre un proyecto, Claude Code pregunta si confías en la carpeta: elige Yes, I trust this folder y pulsa Enter. Zeltro hace esta pregunta a propósito con los proyectos importados, porque un repositorio puede traer su propia configuración para el agente.

Paso 4: sigue construyendo sin créditos#
Esta es la parte que cambia las cuentas. En Lovable, cada cambio se descuenta de un saldo de créditos. En Zeltro, el agente que hace el trabajo es tuyo: Claude Code, Codex, Antigravity, Qwen Code, Aider, OpenCode o Hermes, con una suscripción que ya pagas, una clave de API que se cobra al precio del propio proveedor, o un modelo local gratuito.
Escribe lo que quieres en Enviar mensaje al agente y envíalo. Mientras trabaja, aparece un aviso de Trabajando… junto al cuadro. Cuando termina, la pestaña App se recarga con el cambio, y el panel junto al cuadro explica en lenguaje sencillo lo que hizo. Puede hacer una captura de pantalla de la app para comprobar su propio trabajo, y Hablar de un elemento te deja hacer clic en cualquier parte de la página para señalar a qué te refieres.

Cada proyecto tiene un AGENTS.md con su dirección, su base de datos y sus comandos, así
que el agente empieza ya orientado en lugar de volver a descubrir la configuración cada
vez. No hay tokens de Zeltro ni recargos. Consulta usa tu propia clave
para ver cómo funciona, o pon tus propias cifras en la
calculadora de ahorro.
El trabajo que guardas en un commit y subes a la rama sincronizada aparece en tu proyecto de Lovable. Eso es útil si sigues usando Lovable, y una sorpresa si no te lo esperas. Haz tus experimentos en una rama, o dile a tu agente que no haga commits.
Tus datos se quedan en Lovable Cloud#
De entrada, la app importada sigue hablando con su backend de Lovable Cloud, usando las claves que Lovable dejó en el repositorio. En nuestra prueba, los objetos añadidos en la app desde el equipo aparecían en la vista Database del propio Lovable. La documentación de Lovable lo dice claramente: «Una app local que conserva esa configuración lee y escribe en el mismo backend que tu app publicada». Usa datos de prueba hasta que lo tengas decidido.

Tienes tres opciones, dichas con franqueza:
Quedarte con Lovable Cloud por ahora
Construye en local y deja los datos donde están. No hay nada que migrar, y es lo que te dan los pasos anteriores.
Pasarte a tu propio Supabase
Lovable indica Supabase gestionado y Supabase autoalojado como destinos admitidos para su backend. Exporta el esquema y los datos, descarga los archivos almacenados, vuelve a configurar los secretos y las URL de redirección del inicio de sesión, y vuelve a desplegar las Edge Functions.
Trasladarlo a Zeltro
Zeltro ya ejecuta Postgres para todos los proyectos. Para una app pequeña como la de nuestra prueba, el traslado fue un mensaje a la IA y unos cinco minutos: pasos 5 y 6. Las apps que usan el inicio de sesión, el almacenamiento de archivos o las Edge Functions de Lovable requieren más, porque también hay que reemplazar esas piezas.
Los proyectos más nuevos de Lovable añaden una pega más: «los conectores y las llamadas a la IA fallan en local», porque las credenciales que hay detrás las gestiona Lovable. Esas funciones hay que reemplazarlas por tus propias claves o servicios antes de que la app sea del todo tuya.
Paso 5: traslada tus datos a Zeltro#
Este paso es opcional, y es el que hace que la app sea del todo tuya: los datos pasan de Lovable Cloud a una base de datos Postgres que Zeltro ejecuta en tu equipo, y la app deja de hablar con Lovable por completo.
¿Instalaste Zeltro antes del 24 de octubre de 2026? Primero reinicia la app Zeltro, lo
que la actualiza (o ejecuta zeltro update en una terminal), y después detén e inicia el
proyecto. Las versiones anteriores conservan una imagen de la app que bloquea las
funciones de servidor que añade este paso.
Pega esto en Enviar mensaje al agente, como un solo mensaje:
Move this app off Lovable Cloud (Supabase) onto Zeltro's own Postgres. Keep every feature and all the data.
1. Create a database for this project on Zeltro's shared Postgres (AGENTS.md says how to reach it) and create the tables from the migration files in drizzle/migrations, leaving out the Supabase-only parts: the anon, authenticated and service_role grants, row level security and its policies.
2. Copy every row from Lovable Cloud into it. Read them through the Supabase REST API using SUPABASE_URL and the publishable key in .env, and keep the same ids and dates.
3. Replace @supabase/supabase-js in the app with TanStack Start server functions that query Postgres with the pg package. Put the connection string in .env as DATABASE_URL. The browser must never talk to the database directly.
4. Remove the Supabase integration: src/integrations/supabase, its middleware in src/start.ts, the supabase folder, the SUPABASE_* and VITE_SUPABASE_* lines in .env, and the package.
5. Stop tracking .env in git: add it to .gitignore, run git rm --cached .env, and add an .env.example without real values.
6. Check it works in the running app: the list shows the copied items, and adding an item and marking one returned both save to Postgres. Nothing should call supabase.co any more.
Don't commit; I'll review the changes first.
En nuestra prueba, Claude Code tardó unos cinco minutos. Creó la base de datos y la tabla, copió todas las filas con los mismos ids y fechas y las comprobó campo por campo, y trasladó al servidor los tres puntos en los que la app leía y escribía datos. La página se ve exactamente igual, el navegador ya no contiene código de base de datos y nada llama ya a Lovable Cloud. Lovable Cloud conserva las filas originales: allí no se borra nada.
El mensaje nombra las piezas que tiene una app típica de Lovable. Si la tuya también usa el inicio de sesión, el almacenamiento de archivos o las Edge Functions de Lovable, dilo en el mensaje: el agente también puede reemplazarlos, pero cuenta con más de una ronda.
Paso 6: corta la sincronización con Lovable#
Hasta ahora, todo lo que subes a la rama sincronizada vuelve a tu proyecto de Lovable. Para que el traslado sea definitivo, guarda el cambio en un commit y envíalo a un repositorio tuyo, y deja el de Lovable como un segundo remoto:
git remote rename origin lovable
git remote add origin https://github.com/you/your-app.git
git push -u origin main
Lovable nunca ve este commit. Si quieres que Lovable deje de sincronizar del todo, abre Settings → Git en Lovable y desconéctalo: «detiene la sincronización y no cambia nada más».
Lovable incluye .env, con la dirección de tu Lovable Cloud y tu clave publicable, en
un commit del repositorio, así que la clave sigue en su historial. En nuestra app de
prueba, las tablas estaban abiertas para cualquiera que tuviera esa clave. Haz que tu
nuevo repositorio sea privado y, cuando tus datos ya estén en Zeltro, borra las filas
antiguas de Lovable Cloud o elimina allí el proyecto.
Autoalojado significa que lo alojas tú#
Zeltro es donde vive la app mientras la construyes. No la publica en internet. Las apps nuevas de Lovable se renderizan en el servidor (TanStack Start), así que necesitan un hosting que ejecute JavaScript en el servidor, como un servidor Node o una plataforma edge, y no un simple hosting estático. El backend va a donde lo hayas trasladado. Si prefieres no tener que lidiar con servidores, yo la publico por ti.
Fuentes#
Probado el 22 de octubre de 2026 con un proyecto nuevo de Lovable en el plan gratuito, trasladado a Zeltro y modificado allí por un agente de IA. Las páginas de Lovable sobre sincronización con Git y sobre despliegue, hosting y propiedad se revisaron esa misma semana. Los planes y las funciones cambian, así que compruébalos en tu propia cuenta.
Preguntas
¿Se puede alojar una app de Lovable por tu cuenta?
Sí. La documentación de Lovable dice que puedes alojar por tu cuenta parte o la totalidad del stack. La app en sí es un proyecto estándar de React que puedes ejecutar y alojar en cualquier sitio que ejecute JavaScript en el servidor. El backend, si usas Lovable Cloud, puede seguir funcionando allí, o pasar a tu propio Supabase (gestionado o autoalojado) o a otra base de datos.
¿Cómo exporto el código de Lovable a GitHub?
Abre la configuración del proyecto, ve a Settings → Git, elige GitHub y deja que Lovable instale su GitHub App en tu cuenta u organización. Lovable crea un repositorio nuevo y lo mantiene sincronizado en ambos sentidos. Funciona en todos los planes, incluido el gratuito.
¿Puedo descargar mi proyecto de Lovable sin GitHub?
En los planes de pago, sí: Download codebase en Settings → Git. En el plan gratuito, usa la sincronización con GitHub.
¿Mi app de Lovable sigue funcionando después de trasladarla?
Sí. La copia importada conserva las claves de Lovable Cloud que venían en el repositorio, y la app habla con Lovable Cloud desde el navegador, así que la copia de tu equipo lee y escribe los mismos datos que la de Lovable.
¿Los cambios que haga en mi equipo aparecerán en Lovable?
Solo si los guardas en un commit y los subes a la rama sincronizada. En ese caso sí, porque la sincronización va en ambos sentidos. Trabaja en una rama, o pide a tu agente que no haga commits, hasta que quieras que lleguen allí.
¿Exportar un proyecto de Lovable incluye la base de datos?
El esquema, sí: los archivos de migración están en el repositorio. Los datos, los usuarios del inicio de sesión, los archivos almacenados y los secretos, no. Se quedan en Lovable Cloud hasta que los traslades. El paso 5 traslada los datos al Postgres de Zeltro.
¿Puedo dejar Lovable Cloud por completo?
Sí. El paso 5 copia los datos a una base de datos Postgres que Zeltro ejecuta por ti y reescribe la app para usarla, y el paso 6 corta la sincronización con Lovable. Para una app pequeña es un mensaje a tu IA y unos minutos; el inicio de sesión, el almacenamiento y las Edge Functions suman trabajo.
¿Existe una alternativa autoalojada a Lovable?
El propio constructor de Lovable solo funciona en su nube; su agente necesita conexión a internet. Zeltro es la alternativa autoalojada para la parte de construir: funciona en tu equipo, con la IA que elijas, y tu app y sus bases de datos se quedan en local. Crea apps en PHP y Python además de en JavaScript. Consulta la comparación completa con Lovable.
¿Cuánto cuesta Zeltro?
La app Zeltro es gratis para uso personal, proyectos de afición y aprendizaje, y sin
cuenta. Una empresa que la use, también para trabajos pagados para clientes, compra una
licencia comercial de por vida una sola vez, por US$99.99. La
herramienta de línea de comandos zeltro es de código abierto (MIT). Aparte, pagas tu
IA: una suscripción que ya tienes, una clave de API que se cobra por uso, o nada con un
modelo local.
Trae tu app de Lovable a casa
Instala Zeltro, importa tu repositorio de Lovable y sigue construyendo con la IA que ya pagas, o con un modelo local gratuito. Gratis para uso personal y sin cuenta.
Instalar Zeltro Por qué traer tu propia clave
¿Prefieres no configurarlo tú? Lo hago yo por ti.
Revisado el 2026-10-23. Los otros productos cambian a menudo: si algo aquí está desactualizado, avísanos y lo corregimos.