Skip to content
Meeko
Type to search the guides and the API reference. Open it from any page with / or Ctrl K; move with the arrow keys and open a result with Enter.
Get started

Contents

On this page

Not translated yet

This page has not been translated into English yet, so it is shown in Spanish.

ServerAppOptions

interfaz

Opciones de createServerApp.

ts
import type { ServerAppOptions } from "@meekojs/meeko/server";

Source code src/server/runtime/app.ts:178

Declaración #

ts
interface ServerAppOptions<Env = Readonly<Record<string, string | undefined>>> {
	readonly manifest: AppManifest
	readonly load: AppModuleLoader
	readonly runtime?: ServerRuntimeDefinition<Env, any> | undefined
	readonly production: boolean
	readonly appName?: string | undefined
	readonly loadRedis?: (() => Promise<unknown>) | undefined
	readonly platform?: ServerPlatform<Env>
	readonly assets?: AssetReader
	readonly prerender?: PrerenderSource
	readonly document?: DocumentOptions
	readonly publicOrigin?: string
	readonly prerendering?: boolean
	readonly root?: string | undefined
	readonly defaultSocketPubSub?: SocketPubSub
	readonly plugins?: readonly PluginRegistration[]
}

Type parameters #

Env = Readonly<Record<string, string | undefined>>

Tipo de las variables o bindings del entorno.

Example #

ts
import { createServerApp } from "@meekojs/meeko/server";
import type { ServerAppOptions } from "@meekojs/meeko/server";
import { load, manifest, runtime } from "virtual:meeko-server-app";

const options: ServerAppOptions = {
  manifest, load, runtime,
  production: true,
  platform: { name: "node", env: process.env, waitUntil: () => {} },
  publicOrigin: "https://example.com",
};
const app = await createServerApp(options);

Propiedades #

manifest #

propiedad sólo lectura

readonly manifest: AppManifest

Manifiesto fijado en el build.

load #

propiedad sólo lectura

readonly load: AppModuleLoader

Cargador de módulos por clave del manifiesto.

runtime #

propiedad sólo lectura opcional

readonly runtime?: ServerRuntimeDefinition<Env, any> | undefined

Export por defecto de server/runtime.ts. Si falta, o no devuelve sessions, Meeko crea las sesiones: en memoria en desarrollo y, en producción, en Redis con MEEKO_REDIS_URL.

production #

propiedad sólo lectura

readonly production: boolean

Modo producción: exige un store de sesiones persistente y oculta los detalles de los errores.

appName #

propiedad sólo lectura opcional since 1.2.0

readonly appName?: string | undefined

Nombre de la aplicación (el name de package.json), para el prefijo Redis por defecto de las sesiones, meeko:<nombre>:prod:. La entrada que genera Meeko lo pasa.

loadRedis #

propiedad sólo lectura opcional since 1.2.0

readonly loadRedis?: (() => Promise<unknown>) | undefined

Importa el paquete redis del proyecto para las sesiones de producción con MEEKO_REDIS_URL cuando server/runtime.ts no declara sessions. La entrada que genera Meeko lo pasa en Node, Bun y Deno si el proyecto instala redis; Workers no lo tiene, porque no abre conexiones TCP.

platform #

propiedad sólo lectura opcional

readonly platform?: ServerPlatform<Env>

Plataforma que recibe la fábrica del runtime y que se usa cuando fetch no recibe otra.

assets #

propiedad sólo lectura opcional

readonly assets?: AssetReader

Lector de los archivos públicos del build.

prerender #

propiedad sólo lectura opcional

readonly prerender?: PrerenderSource

Páginas prerenderizadas; sus URL se sirven sin loader ni render.

document #

propiedad sólo lectura opcional

readonly document?: DocumentOptions

Añadidos del host a cada documento HTML.

publicOrigin #

propiedad sólo lectura opcional

readonly publicOrigin?: string

Sustituye a ServerRuntime.publicOrigin.

prerendering #

propiedad sólo lectura opcional

readonly prerendering?: boolean

Lo activa meeko build mientras prerenderiza páginas.

root #

propiedad sólo lectura opcional since 1.8.0

readonly root?: string | undefined

Raíz absoluta del proyecto, que recibe la fábrica del runtime como ServerRuntimeContext.root. Las entradas que genera Meeko la pasan en meeko dev y en las salidas de Node, Bun y Deno.

defaultSocketPubSub #

propiedad sólo lectura opcional

readonly defaultSocketPubSub?: SocketPubSub

Broker de Socket si el runtime no declara ninguno, como el de Durable Objects en Cloudflare.

plugins #

propiedad sólo lectura opcional since 1.2.0

readonly plugins?: readonly PluginRegistration[]

Plugins de aplicación del servidor (*.server.ts y universales), que se ejecutan una vez por petición de página antes del render. La entrada que genera Meeko pasa los de app/plugins y los módulos.

See also #

Was this page helpful?

Add a comment

It is sent when you choose “Yes” or “No”. Only the page, your answer and the comment are stored: no cookies and no personal data.

0 of 2000 characters

Edit on GitHub: packages/meeko/src/server/runtime/app.ts