Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

ESLint Processor

Purpose

Lints JavaScript and TypeScript files using ESLint.

A Rust alternative is oxlint: a single static binary that reads an ESLint-style config and needs no node runtime. A second is biome, whose linter covers JavaScript and TypeScript too.

How It Works

Discovers .js, .jsx, .ts, .tsx, .mjs, and .cjs files in the project (excluding common build tool directories), runs eslint on each file, and records success in the cache. A non-zero exit code from eslint fails the product.

This processor supports batch mode, allowing multiple files to be checked in a single eslint invocation for better performance.

If an ESLint config file exists (.eslintrc* or eslint.config.*), it is automatically added as an extra input so that configuration changes trigger rebuilds.

Source Files

  • Input: **/*.js, **/*.jsx, **/*.ts, **/*.tsx, **/*.mjs, **/*.cjs
  • Output: none (checker)

Configuration

[processor.checker.eslint]
command = "eslint"
args = []
dep_inputs = []
KeyTypeDefaultDescription
commandstring"eslint"The eslint executable to run
argsstring[][]Extra arguments passed to eslint
dep_inputsstring[][]Extra files whose changes trigger rebuilds

Batch support

The tool accepts multiple files on the command line. When batching is enabled (default), rsconstruct passes all files in a single invocation for better performance.

Clean behavior

This processor is a Checker — rsconstruct clean outputs is a no-op for it (checkers produce no outputs). See Clean behavior and rsconstruct clean.