Concepts

Linting & Formatting

Automated tools that verify style, detect potential errors, and format code consistently, eliminating style debates and improving quality.

seed#linting#formatting#eslint#prettier#biome#automation

What it is

Linting statically analyzes code to find errors, anti-patterns, and style violations. Formatting applies consistent style automatically. Together they eliminate style debates and catch bugs before runtime.

Tools

ToolTypeLanguages
ESLintLinterJavaScript/TypeScript
PrettierFormatterMulti-language
BiomeLinter + FormatterJS/TS (fast, Rust)
RuffLinter + FormatterPython (fast, Rust)
StylelintLinterCSS

Integration

PointWhen it runsTool
IDEReal-time feedback while typingESLint, Prettier extensions
Pre-commit hooksBefore each commitlint-staged + husky
CIGate blocking PRs with errorsGitHub Actions, GitLab CI
Auto-fixAutomatic problem correctioneslint --fix, prettier --write

Biome as alternative

Biome replaces ESLint + Prettier with a single Rust-written tool, up to 35x faster.

Why it matters

Linting and automatic formatting eliminate subjective style discussions in code reviews. When rules are applied automatically, reviews focus on logic and design — what actually matters.

References

  • ESLint — JavaScript linter.
  • Biome — Fast toolchain.
  • Prettier — Prettier, 2024. Opinionated code formatter.
Concepts