# Construir

Compila la aplicación para producción.

### Sintaxis

```
$ vela build
```

Esto ejecuta `vite build` con el gestor de paquetes del proyecto. El directorio de salida lo determina el adaptador de SvelteKit configurado en `vite.config.ts` — `build` para los adaptadores por defecto.

### Origen de las páginas prerenderizadas

El prerenderizado no tiene una petición de la que tomar un origen, así que SvelteKit usa un host de marcador de posición, y este acaba en cada enlace canónico, `og:url` y `hreflang` que una página prerenderizada construya a partir de `url.origin`.

Vela establece ese origen a partir del dominio vinculado al objetivo en `.vela/project.json`, y si no lo hay, de `deploy.domain` en `velastack.config.ts`. Define `VELA_ORIGIN` para sobrescribirlo. La configuración lo lee como `kit.prerender.origin`:

```ts
sveltekit({
    ...(process.env.VELA_ORIGIN ? { prerender: { origin: process.env.VELA_ORIGIN } } : {})
})
```

Si el objetivo aún no tiene dominio y la compilación prerenderizó algo, Vela lo indica en lugar de publicar el marcador de posición sin avisar.

Los enlaces canónicos y las URLs de las imágenes Open Graph de las plantillas no dependen de él: se construyen a partir de `url` en [`src/lib/site.ts`](/es/cli/project-structure), que tiene que apuntar a la dirección donde se despliega el sitio. El origen sigue importando para todo lo demás que lea `url.origin`.

### La base de datos durante la compilación

Si el proyecto tiene un backend, Vela inicia PocketBase mientras dura la compilación y lo detiene después. Esto permite que las páginas prerenderizadas carguen datos de la base de datos sin un servidor ejecutándose por separado. Si `POCKETBASE_URL` ya está definida en el entorno, se usa esa base de datos y no se inicia nada.

### Compilaciones estáticas

La salida estática es una propiedad del proyecto, no una opción de compilación. Genera el proyecto con la plantilla `static` y quedará configurado con `@sveltejs/adapter-static` y sin backend:

```
$ vela create my-site --template static
```

Un proyecto existente puede prescindir de su backend con [`vela disable backend`](/es/disable/backend). Consulta la página del [Generador de Sitios Estáticos](/es/static) para conocer las limitaciones que conlleva.