Use when applying Biome's linting capabilities, rule categories, and code quality enforcement to JavaScript/TypeScript projects.
View on GitHubSelect agents to install to:
npx add-skill https://github.com/TheBushidoCollective/han/blob/main/plugins/validation/biome/skills/biome-linting/SKILL.md -a claude-code --skill biome-lintingInstallation paths:
.claude/skills/biome-linting/# Biome Linting
Expert knowledge of Biome's linting capabilities, rule categories, and code quality enforcement for JavaScript and TypeScript projects.
## Overview
Biome's linter provides fast, comprehensive code quality checks with a focus on correctness, performance, security, and best practices. It's designed to catch common bugs and enforce consistent code patterns.
## Core Commands
### Basic Linting
```bash
# Check files without fixing
biome check .
# Check and auto-fix
biome check --write .
# Check specific files
biome check src/**/*.ts
# CI mode (strict, fails on warnings)
biome ci .
```
### Command Options
```bash
# Verbose output
biome check --verbose .
# JSON output
biome check --json .
# Only lint (skip formatting)
biome lint .
# Apply safe fixes only
biome check --write --unsafe=false .
```
## Rule Categories
### Accessibility (a11y)
Rules for web accessibility and WCAG compliance:
```json
{
"linter": {
"rules": {
"a11y": {
"recommended": true,
"noAccessKey": "error",
"noAriaHiddenOnFocusable": "error",
"noAutofocus": "warn",
"noBlankTarget": "error",
"noPositiveTabindex": "error",
"useAltText": "error",
"useAnchorContent": "error",
"useButtonType": "error",
"useValidAriaProps": "error"
}
}
}
}
```
Common violations:
- Missing alt text on images
- Autofocus on form elements
- Positive tabindex values
- Links without content
- Invalid ARIA properties
### Complexity
Rules to reduce code complexity:
```json
{
"linter": {
"rules": {
"complexity": {
"recommended": true,
"noBannedTypes": "error",
"noExcessiveCognitiveComplexity": "warn",
"noExtraBooleanCast": "error",
"noMultipleSpacesInRegularExpressionLiterals": "error",
"noUselessCatch": "error",
"noUselessConstructor": "error",
"noUselessEmptyExport": "error",
"noUselessFragments": "error",