quasarframework/quasar · error
No icongenie-*.json files detected in "${folder}" folder!
Error message
No icongenie-*.json files detected in "${folder}" folder! What it means
parseFolder globs the given folder for icongenie-*.json profile files and, when it finds zero, warns and exits the process with code 1. icongenie's batch/profile mode requires at least one JSON profile file to know which icons to generate.
Source
Thrown at icongenie/lib/utils/get-profile-files.js:17
import { basename } from 'node:path'
import { globSync } from 'tinyglobby'
import { lstatSync } from 'node:fs'
import { warn } from '../utils/logger.js'
function parseFolder(folder) {
const profileFiles = globSync(`icongenie-*.json`, {
cwd: folder,
deep: 1,
absolute: true
})
const numberOfFiles = profileFiles.length
if (numberOfFiles === 0) {
warn(`No icongenie-*.json files detected in "${folder}" folder!`)
process.exit(1)
}
console.log(` Detected ${numberOfFiles} JSON profile file(s):\n`)
console.log(` * ${folder}`)
profileFiles.forEach((file, index) => {
const prefix = index + 1 < profileFiles.length ? `├──` : `└──`
console.log(` ${prefix} ${basename(file)}`)
})
console.log()
return profileFiles
}
export function getProfileFiles(profileParam) {View on GitHub (pinned to 4841521b5f)
Solutions
- Place at least one JSON profile named with the icongenie- prefix (e.g. icongenie-all.json) in the folder passed via -f/--filter
- Check the folder path passed with -f is correct and is the direct folder containing the profiles
- Rename existing profile JSON files to match the icongenie-*.json glob pattern
Example fix
// before quasar icongenie g -f ./assets/profiles // holds icon-profiles.json // after // rename to assets/profiles/icongenie-icon.json (or move profiles to the folder root) quasar icongenie g -f ./assets/profiles
Defensive patterns
Strategy: validation
Validate before calling
import { readdirSync } from 'node:fs'
const profiles = readdirSync(profileFolder).filter(f => /^icongenie-.*\.json$/.test(f))
if (profiles.length === 0) {
throw new Error(`No icongenie-*.json profiles in ${profileFolder}`)
} Type guard
const hasProfileFiles = (dir) => readdirSync(dir).some(f => f.startsWith('icongenie-') && f.endsWith('.json')) Prevention
- Follow the icongenie-*.json naming convention exactly for profile files
- Verify the -f/--filter path points to the folder directly containing the profiles (not a parent)
- List the folder contents in CI before running profile-based generation
When it happens
Trigger: Running `icongenie g --mode all -f <folder>` (or default profile discovery) against a folder containing no files matching icongenie-*.json.
Common situations: Profile files misnamed (e.g. my-icons.json or icon.profile.json instead of icongenie-*.json), profile files placed in a subfolder of the one passed with -f, or a typo in the -f path.
Related errors
- ERR_PARSE_ARGS_UNKNOWN_OPTION
- Specified profile file has a syntax error
- render() - cannot locate ${templatePath}. Skipping...
- renderFile() - cannot locate ${relativeSourcePath}. Skipping
- The file defined in bex manifest > background > service_work
AI-assisted analysis of quasarframework/quasar@4841521b5f (2026-08-30).
Data as JSON: /api/errors/343cf2ecfe103ccd.
Report an issue: GitHub.