createPreviewServer() — astro Function Reference
Architecture documentation for the createPreviewServer() function in preview.ts from the astro codebase.
Entity Profile
Dependency Diagram
graph TD 1e83288b_e626_faf6_40e6_9dd61efff0ed["createPreviewServer()"] 0e850bda_fb21_6bc2_df97_aab29717b7c7["preview.ts"] 1e83288b_e626_faf6_40e6_9dd61efff0ed -->|defined in| 0e850bda_fb21_6bc2_df97_aab29717b7c7 6445b6ff_b146_6b78_6eb7_90f8bc42caf7["serverStart()"] 1e83288b_e626_faf6_40e6_9dd61efff0ed -->|calls| 6445b6ff_b146_6b78_6eb7_90f8bc42caf7 style 1e83288b_e626_faf6_40e6_9dd61efff0ed fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
packages/integrations/cloudflare/src/entrypoints/preview.ts lines 15–95
const createPreviewServer: CreatePreviewServer = async ({
logger,
base,
server,
headers,
port,
host,
root,
}) => {
const startServerTime = performance.now();
let previewServer: VitePreviewServer;
const cfPluginConfig: PluginConfig = {
viteEnvironment: { name: 'ssr' },
config: cloudflareConfigCustomizer(),
};
try {
previewServer = await preview({
configFile: false,
base,
appType: 'mpa',
build: {
outDir: fileURLToPath(server),
},
root: fileURLToPath(root),
preview: {
host,
port,
headers,
open: false,
allowedHosts: [],
},
plugins: [cfVitePlugin(cfPluginConfig)],
});
} catch (err) {
if (err instanceof Error) {
logger.error(err.stack || err.message);
}
throw err;
}
// Set up shortcuts
const customShortcuts: Array<CLIShortcut> = [
// Disable default Vite shortcuts that don't work well with Astro
{ key: 'r', description: '' },
{ key: 'u', description: '' },
{ key: 'c', description: '' },
{ key: 's', description: '' },
];
previewServer.bindCLIShortcuts({
customShortcuts,
});
// Log server start URLs
logger.info(
serverStart({
startupTime: performance.now() - startServerTime,
resolvedUrls: previewServer.resolvedUrls ?? { local: [], network: [] },
host,
base,
}),
);
// Resolves once the server is closed
function closed() {
return new Promise<void>((resolve, reject) => {
previewServer.httpServer.addListener('close', resolve);
previewServer.httpServer.addListener('error', reject);
});
}
return {
host,
port,
closed,
server: previewServer.httpServer as http.Server,
stop: previewServer.close.bind(previewServer),
};
};
Domain
Subdomains
Calls
Source
Frequently Asked Questions
What does createPreviewServer() do?
createPreviewServer() is a function in the astro codebase, defined in packages/integrations/cloudflare/src/entrypoints/preview.ts.
Where is createPreviewServer() defined?
createPreviewServer() is defined in packages/integrations/cloudflare/src/entrypoints/preview.ts at line 15.
What does createPreviewServer() call?
createPreviewServer() calls 1 function(s): serverStart.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free