quasarframework/quasar · error
One of your installed App Extensions failed to run.
Error message
One of your installed App Extensions failed to run.
What it means
While computing the final config, Quasar executes hooks/extensions of installed App Extensions; if one of them throws, the error is logged and this message is reported. Fatal under shouldFail; otherwise the run warns and stops config computation, since the extension could have mutated required config.
Source
Thrown at app-vite/lib/quasar-config-file.js:912
if (Object(overrides) === overrides) {
rawQuasarConf = merge(rawQuasarConf, overrides)
}
resolveAppExtensionAssets(
rawQuasarConf,
tildeAssetCounts,
hook.packageDir
)
}
)
} catch (err) {
console.log()
console.error(err)
if (this.#shouldFail) {
fatal('One of your installed App Extensions failed to run', 'FAIL')
}
warn('One of your installed App Extensions failed to run.\n')
return
}
const cfg = {
...rawQuasarConf,
metaConf
}
// we need to know if using SSR + PWA immediately
if (this.#ctx.mode.ssr) {
cfg.ssr = merge(
{
pwa: false,
pwaOfflineHtmlFilename: 'offline.html',
manualStoreHydration: false,
manualPostHydrationTrigger: false,
prodPort: 3000, // gets superseded in production by an eventual process.env.PORT
prodScriptNamedExport: falseView on GitHub (pinned to 4841521b5f)
Solutions
- Look at the console.error(err) stack printed just above the message to identify which extension failed.
- Update the failing App Extension (`quasar ext update <name>`) and @quasar/app-vite to latest compatible versions.
- Remove the extension if unneeded (`quasar ext remove <name>`) and re-run.
- Reinstall dependencies (rm -rf node_modules && pnpm install) to fix corrupted packages.
- Report/patch the extension if its hook itself is buggy.
Example fix
# before $ quasar dev # after $ quasar ext update my-extension $ pnpm install $ quasar dev
Defensive patterns
Strategy: try-catch
Validate before calling
// Verify installed extensions are loadable before dev/build:
import { readFileSync, existsSync } from 'node:fs'
const exts = JSON.parse(readFileSync('src/quasar.extensions.json', 'utf8'))
for (const name of Object.keys(exts)) {
if (!existsSync(`node_modules/${name}`)) console.warn(`Missing extension: ${name}`)
} Try / catch
try {
await runExtensionHooks('extendQuasarConf', api)
} catch (err) {
console.error(`App Extension ${name} hook failed:`, err)
} Prevention
- Keep App Extensions and @quasar/app-vite versions in sync; update together.
- Read the extension's README for required files/folders before installing.
- After a partial install failure, reinstall node_modules cleanly.
- Test `quasar dev` immediately after adding an extension.
When it happens
Trigger: An installed App Extension's hook (registered via api.extendQuasarConf or similar lifecycle) throws during #computeConfig — e.g. the extension package is broken, incompatible with the current @quasar/app-vite version, or its hook references files/options missing in the project.
Common situations: After installing an AE whose version lags behind the CLI (breaking API change); an AE expecting files/folders the project lacks; a corrupted node_modules after a partial install; Node version incompatibility with AE code.
Related errors
- Build output directory must be a non-empty path
- Project directory must be a non-empty path
- Refusing to remove the project root as build output
- Build output directory must remain inside the project. Set b
- Failed to render template "${sourcePath}". This may break th
AI-assisted analysis of quasarframework/quasar@4841521b5f (2026-08-30).
Data as JSON: /api/errors/4af9c6171b5d4748.
Report an issue: GitHub.