createApp() — astro Function Reference
Architecture documentation for the createApp() function in dev.ts from the astro codebase.
Entity Profile
Dependency Diagram
graph TD c2d42e20_1450_75d9_64ea_b88512e8280f["createApp()"] 792cf06d_c4c5_9609_1e18_7bf79b62efb1["dev.ts"] c2d42e20_1450_75d9_64ea_b88512e8280f -->|defined in| 792cf06d_c4c5_9609_1e18_7bf79b62efb1 style c2d42e20_1450_75d9_64ea_b88512e8280f fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
packages/astro/src/core/app/entrypoint/dev.ts lines 10–33
export function createApp(): BaseApp {
const logger = createConsoleLogger(manifest.logLevel);
currentDevApp = new DevApp(manifest, true, logger);
// Listen for route updates via HMR
if (import.meta.hot) {
import.meta.hot.on('astro:routes-updated', async () => {
if (!currentDevApp) return;
try {
// Re-import the routes module to get fresh routes
const { routes: newRoutes } = await import('virtual:astro:routes');
const newRoutesList: RoutesList = {
routes: newRoutes.map((r: RouteInfo) => r.routeData),
};
currentDevApp.updateRoutes(newRoutesList);
} catch (e: any) {
// Log error but don't crash - route updates are non-critical
logger.error('router', `Failed to update routes via HMR:\n ${e}`);
}
});
}
return currentDevApp;
}
Domain
Subdomains
Source
Frequently Asked Questions
What does createApp() do?
createApp() is a function in the astro codebase, defined in packages/astro/src/core/app/entrypoint/dev.ts.
Where is createApp() defined?
createApp() is defined in packages/astro/src/core/app/entrypoint/dev.ts at line 10.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free