Home / Function/ createDevelopmentManifest() — astro Function Reference

createDevelopmentManifest() — astro Function Reference

Architecture documentation for the createDevelopmentManifest() function in plugin.ts from the astro codebase.

Entity Profile

Dependency Diagram

graph TD
  85bf14e1_2051_d4d7_aa01_3f9481b689a5["createDevelopmentManifest()"]
  75a8e8ea_e89a_9f2f_f147_95a5b4ca1f90["plugin.ts"]
  85bf14e1_2051_d4d7_aa01_3f9481b689a5 -->|defined in| 75a8e8ea_e89a_9f2f_f147_95a5b4ca1f90
  style 85bf14e1_2051_d4d7_aa01_3f9481b689a5 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/astro/src/vite-plugin-astro-server/plugin.ts lines 134–214

export async function createDevelopmentManifest(settings: AstroSettings): Promise<SSRManifest> {
	let i18nManifest: SSRManifestI18n | undefined;
	let csp: SSRManifestCSP | undefined;
	if (settings.config.i18n) {
		i18nManifest = {
			fallback: settings.config.i18n.fallback,
			strategy: toRoutingStrategy(settings.config.i18n.routing, settings.config.i18n.domains),
			defaultLocale: settings.config.i18n.defaultLocale,
			locales: settings.config.i18n.locales,
			domainLookupTable: {},
			fallbackType: toFallbackType(settings.config.i18n.routing),
			domains: settings.config.i18n.domains,
		};
	}

	if (shouldTrackCspHashes(settings.config.security.csp)) {
		const styleHashes = [
			...getStyleHashes(settings.config.security.csp),
			...settings.injectedCsp.styleHashes,
		];

		csp = {
			cspDestination: settings.adapter?.adapterFeatures?.staticHeaders ? 'adapter' : undefined,
			scriptHashes: getScriptHashes(settings.config.security.csp),
			scriptResources: getScriptResources(settings.config.security.csp),
			styleHashes,
			styleResources: getStyleResources(settings.config.security.csp),
			algorithm: getAlgorithm(settings.config.security.csp),
			directives: getDirectives(settings),
			isStrictDynamic: getStrictDynamic(settings.config.security.csp),
		};
	}

	return {
		rootDir: settings.config.root,
		srcDir: settings.config.srcDir,
		cacheDir: settings.config.cacheDir,
		outDir: settings.config.outDir,
		buildServerDir: settings.config.build.server,
		buildClientDir: settings.config.build.client,
		publicDir: settings.config.publicDir,
		trailingSlash: settings.config.trailingSlash,
		buildFormat: settings.config.build.format,
		compressHTML: settings.config.compressHTML,
		assetsDir: settings.config.build.assets,
		serverLike: settings.buildOutput === 'server',
		assets: new Set(),
		entryModules: {},
		routes: [],
		adapterName: settings?.adapter?.name ?? '',
		clientDirectives: settings.clientDirectives,
		renderers: [],
		base: settings.config.base,
		userAssetsBase: settings.config?.vite?.base,
		assetsPrefix: settings.config.build.assetsPrefix,
		site: settings.config.site,
		componentMetadata: new Map(),
		inlinedScripts: new Map(),
		i18n: i18nManifest,
		checkOrigin:
			(settings.config.security?.checkOrigin && settings.buildOutput === 'server') ?? false,
		key: hasEnvironmentKey() ? getEnvironmentKey() : createKey(),
		middleware() {
			return {
				onRequest: NOOP_MIDDLEWARE_FN,
			};
		},
		sessionConfig: sessionConfigToManifest(settings.config.session),
		csp,
		devToolbar: {
			enabled:
				settings.config.devToolbar.enabled &&
				(await settings.preferences.get('devToolbar.enabled')),
			latestAstroVersion: settings.latestAstroVersion,
			debugInfoOutput: '',
			placement: settings.config.devToolbar.placement,
		},
		logLevel: settings.logLevel,
		shouldInjectCspMetaTags: false,
	};
}

Domain

Subdomains

Frequently Asked Questions

What does createDevelopmentManifest() do?
createDevelopmentManifest() is a function in the astro codebase, defined in packages/astro/src/vite-plugin-astro-server/plugin.ts.
Where is createDevelopmentManifest() defined?
createDevelopmentManifest() is defined in packages/astro/src/vite-plugin-astro-server/plugin.ts at line 134.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free