dev.ts — astro Source File
Architecture documentation for dev.ts, a typescript file in the astro codebase. 6 imports, 0 dependents.
Entity Profile
Dependency Diagram
graph LR 792cf06d_c4c5_9609_1e18_7bf79b62efb1["dev.ts"] f651f759_e227_9ba0_846c_cd5525810aaa["../core/app/base.js"] 792cf06d_c4c5_9609_1e18_7bf79b62efb1 --> f651f759_e227_9ba0_846c_cd5525810aaa 1591294b_c95a_36e5_8df6_92813e83b954["../dev/app.js"] 792cf06d_c4c5_9609_1e18_7bf79b62efb1 --> 1591294b_c95a_36e5_8df6_92813e83b954 fa2fbd43_7629_5b9d_8813_6306c2da1dab["./logging.js"] 792cf06d_c4c5_9609_1e18_7bf79b62efb1 --> fa2fbd43_7629_5b9d_8813_6306c2da1dab a4f2698c_5256_262a_ba7c_f72b51878d10["../core/app/types.js"] 792cf06d_c4c5_9609_1e18_7bf79b62efb1 --> a4f2698c_5256_262a_ba7c_f72b51878d10 e9b74c5a_8d34_34a7_e196_5e41b87214aa["../types/astro.js"] 792cf06d_c4c5_9609_1e18_7bf79b62efb1 --> e9b74c5a_8d34_34a7_e196_5e41b87214aa 7fa0f224_0fa3_4cdf_ea00_731b36139af8["virtual:astro:manifest"] 792cf06d_c4c5_9609_1e18_7bf79b62efb1 --> 7fa0f224_0fa3_4cdf_ea00_731b36139af8 style 792cf06d_c4c5_9609_1e18_7bf79b62efb1 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
import { manifest } from 'virtual:astro:manifest';
import type { BaseApp } from '../base.js';
import { DevApp } from '../dev/app.js';
import { createConsoleLogger } from '../logging.js';
import type { RouteInfo } from '../types.js';
import type { RoutesList } from '../../../types/astro.js';
let currentDevApp: DevApp | null = null;
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
Functions
Dependencies
- ../core/app/base.js
- ../core/app/types.js
- ../dev/app.js
- ../types/astro.js
- ./logging.js
- virtual:astro:manifest
Source
Frequently Asked Questions
What does dev.ts do?
dev.ts is a source file in the astro codebase, written in typescript. It belongs to the CoreAstro domain, CoreMiddleware subdomain.
What functions are defined in dev.ts?
dev.ts defines 1 function(s): createApp.
What does dev.ts depend on?
dev.ts imports 6 module(s): ../core/app/base.js, ../core/app/types.js, ../dev/app.js, ../types/astro.js, ./logging.js, virtual:astro:manifest.
Where is dev.ts in the architecture?
dev.ts is located at packages/astro/src/core/app/entrypoint/dev.ts (domain: CoreAstro, subdomain: CoreMiddleware, directory: packages/astro/src/core/app/entrypoint).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free