@gluonjs/ssr / packages/ssr/src/static / generateStaticSite
Function: generateStaticSite()
generateStaticSite(
options):Promise<StaticGenerationResult>
Prerenders explicit public routes and records dynamic deployment fallthroughs.
Parameters
options
Returns
Promise<StaticGenerationResult>
Example
Prerender an explicit route list into deployment files while recording dynamic routes for runtime fallback:
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);