goatlint
v1.61.0
Published
A fast JavaScript/TypeScript linter - fork of oxlint with additional rules
Maintainers
Readme
Goatlint
Goatlint is a high-performance JavaScript and TypeScript linter written in Rust. It runs 50-100x faster than ESLint while implementing hundreds of popular rules out of the box.
- Zero configuration required to get started
- Supports ESLint-compatible JS plugins for custom rules
- Built-in support for TypeScript, React, Vue, JSX-A11y, Import, Unicorn, and more
- Autofixes for many rules via
--fix
Quick Start
npx goatlint@latestNo setup needed — goatlint lints the current directory with sensible defaults.
Installation
npm install -D goatlintUsage
# Lint the current directory
npx goatlint
# Lint specific paths
npx goatlint src/ tests/
# Apply autofixes
npx goatlint --fix
# Show all available rules
npx goatlint --rules
# Output as JSON
npx goatlint --format jsonConfiguration
Create a .goatlintrc.json in your project root:
{
"$schema": "./node_modules/goatlint/configuration_schema.json",
"rules": {
"no-unused-vars": "warn",
"no-console": "off"
},
"categories": {
"correctness": "error",
"suspicious": "warn"
}
}Or generate one automatically:
npx goatlint --initSee the config file reference for all options.
Migrating from ESLint
npx @goatlint/migrateThis reads your ESLint config and generates an equivalent .goatlintrc.json. See the migration guide for details.
