> ## Documentation Index
> Fetch the complete documentation index at: https://docs.base44.com/llms.txt
> Use this file to discover all available pages before exploring further.

# base44 eject

> Descarga el código de un proyecto de Base44 existente a tu máquina local.

<Warning>
  Esta página es parte de una habilidad de agente de codificación con IA y está escrita para agentes, no para humanos. Para la documentación de Base44 legible por humanos, consulta la [documentación para desarrolladores](/developers).
</Warning>

# base44 eject

Descarga el código de un proyecto de Base44 existente a tu máquina local.

## Sintaxis

```bash theme={null}
npx base44 eject [options]
```

## Opciones

| Opción              | Descripción                                                                                                                          | Requerido |
| ------------------- | ------------------------------------------------------------------------------------------------------------------------------------ | --------- |
| `-p, --path <path>` | Ruta donde escribir el proyecto                                                                                                      | No        |
| `--app-id <id>`     | App ID a ejectar (omite la selección interactiva) — bandera global, también aceptada mediante la variable de entorno `BASE44_APP_ID` | No        |
| `-y, --yes`         | Omite los avisos de confirmación                                                                                                     | No        |

## Lo que hace

El comando `eject` te permite descargar el código fuente de un proyecto de Base44 que se creó o gestionó a través de la plataforma:

1. Lista todos los proyectos ejectables (proyectos con código fuente gestionado)
2. Te permite seleccionar un proyecto interactivamente (o especificar mediante `--app-id`)
3. Descarga el código del proyecto a un directorio local
4. Crea un nuevo proyecto como copia (llamado "\{Nombre original} Copy")
5. Vincula el código descargado al nuevo proyecto
6. Crea `.env.local` con el nuevo ID de proyecto
7. Opcionalmente instala dependencias, compila y despliega el proyecto

## Ejemplos

```bash theme={null}
# Modo interactivo - selecciona el proyecto de la lista y especifica la ruta
npx base44 eject

# Especificar la ruta de salida
npx base44 eject -p ./my-project

# No interactivo - especifica el ID de app y omite confirmaciones
npx base44 eject --app-id abc123 -p ./my-project -y
```

## Flujo de trabajo

Cuando ejecutas `eject`:

1. **Selección del proyecto**: Elige de los proyectos ejectables disponibles
2. **Selección de ruta**: Especifica dónde crear el proyecto (por defecto `./{project-name}` o `./` si el directorio actual está vacío)
3. **Descarga**: El código del proyecto se descarga a la ruta especificada
4. **Creación del nuevo proyecto**: Se crea una copia del proyecto en Base44 (por ejemplo, "My App Copy")
5. **Vinculación**: El código local se vincula al nuevo proyecto
6. **Despliegue opcional**: Si el proyecto tiene comandos de compilación configurados, se te preguntará si quieres desplegar
   * Ejecuta el comando de instalación (por ejemplo, `npm install`)
   * Ejecuta el comando de compilación (por ejemplo, `npm run build`)
   * Despliega todos los recursos con `base44 deploy`

## Requisitos

* Debes estar autenticado (ejecuta `npx base44 login` primero)
* El proyecto debe ser ejectable (tener código fuente gestionado)
* En modo no interactivo, tanto `--app-id` como `--path` son requeridos

## Casos de uso

* Descargar un proyecto creado a través del panel de Base44
* Clonar un proyecto gestionado para desarrollo local
* Crear una copia de un proyecto existente para personalizar

## Notas

* El comando crea un **nuevo proyecto** como copia, preservando el original
* El nuevo proyecto se llamará "\{Nombre original} Copy"
* El código descargado se vincula automáticamente al nuevo proyecto
* Si el directorio actual está vacío, la ruta predeterminada es `./`
* Si el directorio actual tiene archivos, la ruta predeterminada es `./{kebab-case-project-name}`
* Solo se pueden ejectar proyectos con `isManagedSourceCode !== false`
* Si no existen proyectos ejectables, el comando sale con "No projects available to eject."

## Comandos relacionados

| Comando         | Descripción                                             |
| --------------- | ------------------------------------------------------- |
| `base44 create` | Crea un nuevo proyecto de Base44 desde una plantilla    |
| `base44 link`   | Vincula un directorio existente a un proyecto de Base44 |
| `base44 deploy` | Despliega todos los recursos del proyecto               |

<Note>Esta página fue traducida usando IA. Para obtener la información más precisa y actualizada, consulta la [versión en inglés](/).</Note>
