Biome Validator
When This Activates
- Setting up linting for a new project
- Before any code quality work
- Auditing existing Biome configurations
- After AI generates biome.json
- CI/CD pipeline validation
Quick Start
python3 scripts/validate.py --root .
python3 scripts/validate.py --root . --strict
What Gets Checked
| Check | Good (2.3+) | Bad (legacy) |
|---|---|---|
| Schema version | "$schema": ".../2.3.12/schema.json" | .../1.9.0/schema.json or older |
| Package version | "@biomejs/biome": "^2.3.0" | "^1.9.0" or 2.0-2.2 |
| Linter config | linter.rules.recommended: true | missing or legacy rules shape |
| Assist actions | assist.actions.source.organizeImports | top-level organizeImports.enabled |
| Domains | linter.domains.react / .next: "on" | no domains configured |
| Suppression comments | // biome-ignore lint/<rule>: reason | // eslint-disable, // @ts-ignore |
Biome 2.0+ also adds type-aware linting (no TypeScript compiler required) and multi-file lint analysis.
See references/full-guide.md (§ What Gets Checked, § Biome 2.3+ Features, § Recommended Configuration) for full GOOD/BAD config examples and a complete recommended biome.json.
Deprecated Patterns
| Deprecated | Replacement (2.3+) |
|------------|-------------------|
| organizeImports.enabled | assist.actions.source.organizeImports |
| Schema < 2.0 | Schema 2.3.11+ |
| @biomejs/biome < 2.3 | @biomejs/biome@latest |
| No domains config | Use linter.domains for frameworks |
See references/full-guide.md (§ Validation Output) for a sample validation report.
Migration from ESLint
- Remove ESLint/Prettier packages, add
@biomejs/biome@latest - Generate config:
bunx biome init - Port existing rules:
bunx biome migrate eslint --write - Update
package.jsonlint/format scripts to callbiome - Delete old
.eslintrc*/.prettierrc*/.eslintignore/.prettierignore
See references/full-guide.md (§ Migration from ESLint) for the exact commands per step, plus VS Code editor settings and a CI/CD workflow snippet.
Integration
linter-formatter-init- Sets up Biome from scratchnextjs-validator- Validates Next.js (enable next domain)bun-validator- Validates Bun workspace