Hacker ApprovedDepartments

ESLint

Ranked 3 of 14 linters by recommenders

Pluggable JavaScript linter that catches bugs and enforces code quality rules, with custom rules easy to write. Critics say it is slow on large projects and breaks across version upgrades.

Pluggable JavaScript linter that catches bugs and enforces code quality rules, with custom rules easy to write. Critics say it is slow on large projects and breaks across version upgrades.

54 people gave an opinion

recommend it
32
criticize it
22
approval share
59%
Each figure is one person. RecommendsCriticizes

Recommended in 11 of 13 months

  1. November 2025: recommended
  2. December 2025: recommended
  3. January 2026: recommended
  4. February 2026: recommended
  5. March 2026: recommended
  6. April 2026: recommended
  7. May 2026: recommended
  8. June 2026: recommended
  9. July 2026: recommended
  10. August 2026: not recommended
  11. September 2026: recommended
  12. October 2026: recommended
  13. November 2026: not recommended (month in progress)

Why it doesn’t carry the badge

  • 32 people recommend itNeeds 10 or more, met.
  • 1.4 recommenders for every criticNeeds 2 to 1 or better, not met.
  • Recommended in 11 of 13 monthsNeeds 4 or more, met.

The same three rules apply to every product, and the badge can’t be bought. How the badge works

What people say about it

The reasons people give, with the number of comments that give each one. Open a reason to read what they said.

Why people recommend it

Each mark is one comment

  • Enforces code quality rules

    “It's excellent for enforcing code quality rules (formatting, unused variables, best practices, etc.)”

    Comment from 5 Mar 2026 in “Show HN: CodeDrift – static analysis for AI-generated code”

    “setting up a large number of static code analysis checks has had the highest impact on code quality”

    Comment from 7 Feb 2026 in “How to effectively write quality code with AI”

    “They are what keep the AI's output from drifting into unmaintainable spaghetti code.”

    Comment from 17 Feb 2026 in “Show HN: I built a tool to un-dumb Claude Code's CLI output (Local Log Viewer)”
  • Helps keep AI agent output clean

    “by running the linter, if Claude does decide to inject this, it gets taken out, because the linter runs and then tells it so”

    Comment from 16 Dec 2025 in “Vibe coding creates fatigue?”

    “I use a tested project template + .md files as well as ESLint + Stylelint and each project generally turns out pretty clean.”

    Comment from 19 Jan 2026 in “Ask HN: COBOL devs, how are AI coding affecting your work?”

    “If you use eslint and tell it how to run lint in CLAUDE.md it will run lint itself and find and fix most issues like this.”

    Comment from 14 Mar 2026 in “1M context is now generally available for Opus 4.6 and Sonnet 4.6”
  • Custom rules and plugins

    “it's so handy to be able to write a new lint rule or introduce an off-the-shelf rule without needing to fix all existing violations”

    Comment from 2 Feb 2026 in “Ratchets in Software Development”

    “tools like eslint allow custom rules which are easy write with something like opus 4.6”

    Comment from 12 Mar 2026 in “Many SWE-bench-Passing PRs would not be merged”

    “it's plugins that make ESLint such a powerful platform that it still can't be replaced”

    Comment from 23 Sep 2026 in “The JavaScript Midlife Crisis”
  • Syntax-aware AST-based checks

    “eslint for AST-based code rule checking (easily picks up duplication for example)”

    Comment from 24 Jul 2026 in “Why Software Factories Fail”

    “get actual syntax aware linting rather than relying on more brittle regex rules”

    Comment from 2 Feb 2026 in “Ratchets in Software Development”

What people warn about

Each mark is one comment

  • Slow on large projects

    “running ESLint and Prettier on your project and having a full build and formatting iteration take like 2 minutes”

    Comment from 28 Mar 2026 in “Make macOS consistently bad (unironically)”

    “ESLint on medium/big projects can be pretty slow and if you use type aware rules it opts out of caching”

    Comment from 18 Feb 2026 in “Fastest Front End Tooling for Humans and AI”
  • Breaking changes between versions

    “eslint has decided to kill off the APIs that support rules like `no-unused-modules`”

    Comment from 26 Feb 2026 in “Show HN: Rev-dep – 20x faster knip.dev alternative build in Go”

    “does it understand the difference between eslint 8x and eslint 9.x?”

    Comment from 7 Jan 2026 in “Opus 4.5 is going to change everything”

    “I still haven't fully migrated every project I maintain to eslint 9”

    Comment from 2 Dec 2025 in “Progress on TypeScript 7 – December 2025”
  • Heavy dependency footprint

    “ESLint is now my only dev dependency with hundreds of dependencies of its own.”

    Comment from 28 Nov 2025 in “GitLab discovers widespread NPM supply chain attack”

    “led to the creation of weird ecosystem like babel, webpack, eslint”

    Comment from 19 May 2026 in “Mini Shai-Hulud Strikes Again: 314 npm Packages Compromised”

Other linters people recommend

The four most recommended other linters, with the same counts for each, so you can compare like for like. The tick on each bar marks the 2 to 1 line the badge needs.

ESLint compared with 4 alternatives
ProductRecommendCriticizeApprovalMonthsOwnedBadge
Ruff1151688%11—Approved
Clippy (Rust linter)583165%12——
ESLintThis page322259%11——
Biome23582%10—Approved
Oxlint20580%7—Approved
See all 14 linters, ranked

What people said

40 of the 60 comments that mention it, newest first. Each links to the original comment.

“I have been using those for more than a decade in node”

RecommendsComment from 6 Oct 2026 in “Friendship ended with Deno, now Node is my best friend”

“it's plugins that make ESLint such a powerful platform that it still can't be replaced”

RecommendsComment from 23 Sep 2026 in “The JavaScript Midlife Crisis”

“now they are codified and provide instant feedback”

RecommendsComment from 6 Sep 2026 in “Cutting (Claude Code) token spend on dynamic workflows 80%”

“eslint for AST-based code rule checking (easily picks up duplication for example)”

RecommendsComment from 24 Jul 2026 in “Why Software Factories Fail”

“Lots of breaking changes but I like where they landed”

MixedComment from 3 Jul 2026 in “Vite+ Beta”

“eslint -> oxlint (but in rust, and fast)”

MixedComment from 2 Jul 2026 in “Vite+ Beta”

“native replacements for eslint and prettier”

MixedComment from 2 Jul 2026 in “Vite+ Beta”

“I'd have preferred a simple eslint config with autofix on save”

RecommendsComment from 16 Jun 2026 in “But yak shaving is fun”

“flagged the ESLint config file. Looked totally normal.”

MixedComment from 2 Jun 2026 in “Vibe coding on top of a freelancer's codebase, read this before your next prompt”

“led to the creation of weird ecosystem like babel, webpack, eslint”

CriticizesComment from 19 May 2026 in “Mini Shai-Hulud Strikes Again: 314 npm Packages Compromised”

“Typescript with strict types and ultra-tight eslint config can give Rust a run for its money.”

RecommendsComment from 12 May 2026 in “If AI Writes Your Code, Why Use Python?”

“I haven't seen it get around my guard rails”

RecommendsComment from 5 Apr 2026 in “Functional programming accellerates agentic feature development”

“These tools have been catching bugs reliably for years.”

RecommendsComment from 4 Apr 2026 in “LLMs audit code from the same blind spot they wrote it from. Here's the fix”

“running ESLint and Prettier on your project and having a full build and formatting iteration take like 2 minutes”

CriticizesComment from 28 Mar 2026 in “Make macOS consistently bad (unironically)”

“If you use eslint and tell it how to run lint in CLAUDE.md it will run lint itself and find and fix most issues like this.”

RecommendsComment from 14 Mar 2026 in “1M context is now generally available for Opus 4.6 and Sonnet 4.6”

“ESLint/SonarQube don't even look for these”

MixedComment from 12 Mar 2026 in “Show HN: Open Code Review – Free CI/CD quality gate for AI-generated code”

“tools like eslint allow custom rules which are easy write with something like opus 4.6”

RecommendsComment from 12 Mar 2026 in “Many SWE-bench-Passing PRs would not be merged”

“It's excellent for enforcing code quality rules (formatting, unused variables, best practices, etc.)”

RecommendsComment from 5 Mar 2026 in “Show HN: CodeDrift – static analysis for AI-generated code”

“You might also have success asking your agent to run `eslint` at the end of every subtask”

RecommendsComment from 28 Feb 2026 in “Rust Is Just a Tool”

“Your tools just constantly changing wildly over a version upgrade”

CriticizesComment from 26 Feb 2026 in “Show HN: Rev-dep – 20x faster knip.dev alternative build in Go”

“eslint has decided to kill off the APIs that support rules like `no-unused-modules`”

CriticizesComment from 26 Feb 2026 in “Show HN: Rev-dep – 20x faster knip.dev alternative build in Go”

“ESLint on medium/big projects can be pretty slow and if you use type aware rules it opts out of caching”

CriticizesComment from 18 Feb 2026 in “Fastest Front End Tooling for Humans and AI”

“I've never been bothered by the performance of standard tooling”

RecommendsComment from 18 Feb 2026 in “Fastest Front End Tooling for Humans and AI”

“just using npm and eslint”

RecommendsComment from 18 Feb 2026 in “Fastest Front End Tooling for Humans and AI”

“They are what keep the AI's output from drifting into unmaintainable spaghetti code.”

RecommendsComment from 17 Feb 2026 in “Show HN: I built a tool to un-dumb Claude Code's CLI output (Local Log Viewer)”

“setting up a large number of static code analysis checks has had the highest impact on code quality”

RecommendsComment from 7 Feb 2026 in “How to effectively write quality code with AI”

“get actual syntax aware linting rather than relying on more brittle regex rules”

RecommendsComment from 2 Feb 2026 in “Ratchets in Software Development”

“it's so handy to be able to write a new lint rule or introduce an off-the-shelf rule without needing to fix all existing violations”

RecommendsComment from 2 Feb 2026 in “Ratchets in Software Development”

“I use a tested project template + .md files as well as ESLint + Stylelint and each project generally turns out pretty clean.”

RecommendsComment from 19 Jan 2026 in “Ask HN: COBOL devs, how are AI coding affecting your work?”

“Tools like ESLint are also nice but focused a bit more on the code than architecture/structure.”

RecommendsComment from 12 Jan 2026 in “Don't fall into the anti-AI hype”

“You cannot simply patch ts or eslint via pnpm if you want to.”

MixedComment from 10 Jan 2026 in “The Performance Revolution in JavaScript Tooling”

“offload as much as you can from your AGENT.md file into type-checking, linters, etc.”

RecommendsComment from 9 Jan 2026 in “Why AI is pushing developers toward typed languages”

“does it understand the difference between eslint 8x and eslint 9.x?”

MixedComment from 7 Jan 2026 in “Opus 4.5 is going to change everything”

“flags real, serious issues but still allows you to be productive”

RecommendsComment from 6 Jan 2026 in “JavaScript's For-Of Loops Are Fast”

“airbnb is the default option, which ends up making it used very widely”

MixedComment from 6 Jan 2026 in “JavaScript's For-Of Loops Are Fast”

“by running the linter, if Claude does decide to inject this, it gets taken out, because the linter runs and then tells it so”

RecommendsComment from 16 Dec 2025 in “Vibe coding creates fatigue?”

“you probably want the recommended preset for whatever ruleset exists for the stack you work with”

RecommendsComment from 14 Dec 2025 in “Ask HN: How can I get better at using AI for programming?”

“I still haven't fully migrated every project I maintain to eslint 9”

CriticizesComment from 2 Dec 2025 in “Progress on TypeScript 7 – December 2025”

“ESLint is now my only dev dependency with hundreds of dependencies of its own.”

CriticizesComment from 28 Nov 2025 in “GitLab discovers widespread NPM supply chain attack”

“It's one of the reasons I still prefer ESLint over Prettier in JS land”

RecommendsComment from 2 Nov 2025 on Hacker News

Counts come from 1,795,640 Hacker News comments, November 2025 to November 2026. How we count. Report a mistake.