quasarframework/quasar · error
Files validation not passed successfully. Please fix the iss
Error message
Files validation not passed successfully. Please fix the issues.
What it means
#computeConfig runs appFilesValidations against the project (required files such as src, src/App.vue, index.html, template files, etc.); if any required file is missing or invalid, this message is reported. Fatal under shouldFail; otherwise a warning that aborts config computation.
Source
Thrown at app-vite/lib/quasar-config-file.js:1345
rootComponent: 'src/App.vue',
router: 'src/router/index',
store: `src/${this.#storeProvider.pathKey}/index`,
pwaRegisterServiceWorker: 'src-pwa/register-sw',
pwaServiceWorker: 'src-pwa/sw/custom-sw',
pwaManifestFile: 'src-pwa/manifest.json',
electronMain: 'src-electron/electron-main',
bexManifestFile: 'src-bex/manifest.json'
},
cfg.sourceFiles
)
if (!appFilesValidations(appPaths)) {
if (this.#shouldFail) {
fatal('Files validation not passed successfully', 'FAIL')
}
warn('Files validation not passed successfully. Please fix the issues.\n')
return
}
// do we have a store?
const storePath = appPaths.resolve.app(cfg.sourceFiles.store)
Object.assign(cfg.metaConf, {
hasStore: resolveExtension(storePath) !== void 0,
storePackage: this.#storeProvider.name
})
// make sure we have preFetch in config
cfg.preFetch ||= false
if (this.#ctx.mode.capacitor) {
if (cfg.capacitor.capacitorCliPreparationParams.length === 0) {
cfg.capacitor.capacitorCliPreparationParams = [
'sync',
this.#ctx.targetNameView on GitHub (pinned to 4841521b5f)
Solutions
- Read the validation details printed above the message to see exactly which file failed.
- Restore the missing file (recreate via `quasar new`, copy from a fresh scaffold, or `git checkout -- <file>`).
- If you intentionally moved files, update quasar.config > sourceFiles to the new paths.
- Re-add a half-installed mode: `quasar mode remove <mode>` then `quasar mode add <mode>`.
- Re-run the command after restoring.
Example fix
// before (quasar.config)
sourceFiles: { appComponent: 'src/views/Root.vue' } // file doesn't exist
// after
sourceFiles: { appComponent: 'src/App.vue' } // or create the referenced file Defensive patterns
Strategy: validation
Validate before calling
// Check the core scaffold files before running commands:
import { existsSync } from 'node:fs'
for (const f of ['src/App.vue', 'index.html', 'src/index.template.html', 'src/router/routes.js']) {
if (!existsSync(f)) console.warn(`Missing required file: ${f}`)
} Prevention
- Never delete scaffold files without replacing them; keep them in git.
- When customizing sourceFiles, verify every referenced path exists.
- Complete mode add/remove cycles fully; check for half-created mode folders.
- After a merge conflict, confirm no required files were lost before building.
When it happens
Trigger: A required project file listed by appFilesValidations is missing or fails its check — e.g. deleted src/App.vue, renamed index.html, missing src-ssr/server after partial mode removal, corrupted scaffold, or wrong file referenced via sourceFiles config.
Common situations: Manually deleting/moving scaffold files; git merge losing files; incomplete `quasar mode add` (mode folder half-created); custom sourceFiles paths in quasar.config pointing at nonexistent files; fresh checkout without install/scaffold.
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
- Importing quasar.config file results in error. Please check
AI-assisted analysis of quasarframework/quasar@4841521b5f (2026-08-30).
Data as JSON: /api/errors/730e4df230e7ef6b.
Report an issue: GitHub.