Validate .swcrc and package.json#swc for parser errors, invalid targets, transform conflicts, module type issues, minification problems, and best practices. Supports text, JSON, and summary output formats with CI-friendly exit codes.
bash
# Full validation (all 22+ rules)
python3 scripts/swc_config_validator.py validate .swcrc
# Quick syntax/structure check only
python3 scripts/swc_config_validator.py check .swcrc
# Explain config in human-readable form
python3 scripts/swc_config_validator.py explain .swcrc
# Suggest improvements
python3 scripts/swc_config_validator.py suggest .swcrc
# JSON output (CI-friendly)
python3 scripts/swc_config_validator.py validate .swcrc --format json
# Summary only (pass/fail + counts)
python3 scripts/swc_config_validator.py validate .swcrc --format summary
# Strict mode (warnings become errors)
python3 scripts/swc_config_validator.py validate .swcrc --strict
# Validate from package.json#swc
python3 scripts/swc_config_validator.py validate package.json
#CategorySeverityRuleS1StructureErrorFile not found or unreadableS2StructureErrorEmpty configS3StructureErrorInvalid JSON syntaxS4StructureWarningUnknown top-level keysS5StructureWarningMissing jsc key (most configs need it)J1JSC ConfigErrorInvalid parser syntax (must be ecmascript or typescript)J2JSC ConfigWarningJSX enabled in parser without React transformJ3JSC ConfigWarningDeprecated loose mode in jsc.transformJ4JSC ConfigWarningMissing target (no compilation target specified)J5JSC ConfigErrorInvalid target value (not es3/es5/es2015-es2024/esnext)M1ModulesErrorUnknown module typeM2ModulesWarningisModule: false with ESM module typeM3ModulesWarningCommonJS module with ESM-only parser featuresT1TransformErrorReact transform without parser.jsx enabledT2TransformWarningLegacy decorators without decoratorsBeforeExportT3TransformWarningConflicting useDefineForClassFields with TypeScriptT4TransformWarningDeprecated constModules in jsc.experimentalN1MinificationWarningMinification enabled with compress: falseN2MinificationWarningMangle enabled without compressN3MinificationWarningDrop console in development configB1Best PracticesWarningsourceMaps not configuredB2Best PracticesInfoNo env config for different environments
text (default): Human-readable with severity iconsjson: Machine-parseable JSON array of findingssummary: Pass/fail with error/warning counts0: No errors (warnings/info only or clean)1: One or more errors found2: File not found or invalid inputes3, es5, es2015 through es2024, esnext
es6, commonjs, umd, amd, nodenext, systemjs
$schema, jsc, module, minify, env, isModule, sourceMaps, inlineSourcesContent, emitSourceMapColumns, inputSourceMap, test, exclude, filename