withastro/astro · warning

Unable to find CSS for ${routeData.component}. This is likel

Error message

Unable to find CSS for ${routeData.component}. This is likely a bug in Astro.

What it means

In dev, Astro serves a route's framework styles by looking the component path up in the dev CSS map (virtual module 'virtual:astro:dev-css-all') and importing its CSS module. If the route's component has no entry in that map, no styles can be injected and Astro logs that this is most likely an internal bug rather than a config problem.

Source

Thrown at packages/astro/src/core/environment/dev-nonrunnable.ts:163

					latestAstroVersion: manifest.devToolbar.latestAstroVersion,
					debugInfo: manifest.devToolbar.debugInfoOutput ?? '',
					placement: manifest.devToolbar.placement,
				};

				// Additional data for the dev overlay
				const children = `window.__astro_dev_toolbar__ = ${stringifyForScript(additionalMetadata)}`;
				scripts.add({ props: {}, children });
			}

			const { devCSSMap } = await import('virtual:astro:dev-css-all');

			const importer = devCSSMap.get(routeData.component);
			let css = new Set<ImportedDevStyle>();
			if (importer) {
				const cssModule = await importer();
				css = cssModule.css;
			} else {
				getLogger(manifest).warn(
					'assets',
					`Unable to find CSS for ${routeData.component}. This is likely a bug in Astro.`,
				);
			}

			// Pass framework CSS in as style tags to be appended to the page.
			for (const { id, url: src, content } of css) {
				// Vite handles HMR for styles injected as scripts
				scripts.add({ props: { type: 'module', src }, children: '' });
				// But we still want to inject the styles to avoid FOUC. The style tags
				// should emulate what Vite injects so further HMR works as expected.
				styles.add({ props: { 'data-vite-dev-id': id }, children: content });
			}

			return { scripts, styles, links };
		},

		componentMetadata() {},

View on GitHub (pinned to 52e6c34790)

Solutions

  1. Restart the dev server — stale virtual-module state is the usual cause
  2. Delete the Vite cache (node_modules/.vite) and start again
  3. Update Astro to the latest patch release; if it persists, report it at https://astro.build/issues with a minimal reproduction since the message flags an internal bug

Example fix

# before: warning persists across page reloads

# after
rm -rf node_modules/.vite
npm run dev
# still failing? update astro (npm install astro@latest) and report the bug
Defensive patterns

Strategy: fallback

Prevention

When it happens

Trigger: routeData.component is absent from devCSSMap — typically a stale Vite module graph after editing astro.config/vite options while the dev server is running, unusual component path aliases, or a genuine Astro regression in the dev-toolbar style-injection path.

Common situations: Right after changing build/dev config with the server still running; HMR edge cases after renaming components; brand-new Astro versions where the dev CSS pipeline regressed.

Related errors


AI-assisted analysis of withastro/astro@52e6c34790 (2026-08-18). Data as JSON: /api/errors/ed98e1d1bbdca9f5. Report an issue: GitHub.