Skip to content

@gluonjs/core / packages/ssr/src/static / generateStaticSite

Function: generateStaticSite() ​

generateStaticSite(options): Promise<StaticGenerationResult>

Prerenders explicit public routes and records dynamic deployment fallthroughs.

Parameters ​

options ​

StaticGenerationOptions

Returns ​

Promise<StaticGenerationResult>

Example ​

Prerender an explicit route list into deployment files while recording dynamic routes for runtime fallback:

ts
import { createApp, html } from '@gluonjs/core';
import { renderRequest } from '@gluonjs/ssr';
import { generateStaticSite, type StaticGenerationOptions, type StaticGenerationResult } from '@gluonjs/ssr/static';

const options = {
  routes: ['/', '/about'],
  dynamicRoutes: ['/products/:id'],
  outputDirectory: 'dist-static',
  assets: { entry: '/assets/app.js' },
  render: (url: string) => renderRequest({
    url,
    createApp: ({ url: currentUrl }) => createApp(() => html`<main>${currentUrl}</main>`),
  }),
} satisfies StaticGenerationOptions;

const generated: StaticGenerationResult = await generateStaticSite(options);
console.log(generated.pages, generated.dynamicRoutes);

Version-matched documentation. Examples are checked against the public package contracts.