ESLint adoption guide: Overview, examples, and alternatives

This page summarizes the projects mentioned and recommended in the original post on dev.to

InfluxDB - Purpose built for real-time analytics at any scale.
InfluxDB Platform is powered by columnar analytics, optimized for cost-efficient storage, and built with open data standards.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  • ESLint

    Find and fix problems in your JavaScript code.

    In this example, ESLint reported two errors due to violation of the rules no-unused-vars and no-undef: The ESLint GitHub project is organized in a monorepo, and you can consult more configuration options by looking into the @eslint/js package. The above config adds all recommended rules, which all have a severity level of error. We will learn more about violation severity in a minute.

  • InfluxDB

    Purpose built for real-time analytics at any scale. InfluxDB Platform is powered by columnar analytics, optimized for cost-efficient storage, and built with open data standards.

    InfluxDB logo
  • JSLint

    JSLint, The JavaScript Code Quality and Coverage Tool

    Launched as one of the first linting tools for JavaScript, JSLint is known for being the forefather of JavaScript linters. It is highly opinionated and does not support custom rule configuration, setting a strict coding standard without room for deviation.

  • eslint-config-standard

    ESLint Config for JavaScript Standard Style

    Rules — As covered in great detail above, shared rules are individual coding guidelines provided by the community, such as ESLint Config for standardjs.com

  • rslint

    A (WIP) Extremely fast JavaScript and TypeScript linter and Rust crate

    A relatively new entrant, RSLint focuses on providing a zero-config linting tool. It is in early development and not ready for production. The last release is from 2022, so it’s unclear if development is still active.

  • eslint-config-canonical

    The most comprehensive ES code style guide.

    Over the years, many popular and widespread shared configurations have been developed. However, with every breaking change in ESLint, the community projects need to migrate. Therefore, it's important to check the compatibility with ESLint v9 support and flat config support in particular before using a third-party npm package: To use a shared ruleset, you can also leverage the CLI option --config. The following installs a third-party configuration, eslint-config-canonical:

  • quick-lint-js

    quick-lint-js finds bugs in JavaScript programs

    Launched in 2021 with the promise of enhancing the developer workflow, quick-lint-js positions itself as a complementary tool to ESLint. It is designed for “real-time speed”, offering rapid feedback within your code editor without latency. Another goal of the tool is zero-config, so it’s opinionated. The tool is aimed at a particular target group.

  • eslint-config-prettier

    Turns off all rules that are unnecessary or might conflict with Prettier.

    The npm package eslint-config-prettier eventually disables any ESLint rules dealing with code formatting to avoid conflicts with Prettier. You can see this with the handy ESLint Config Inspector: The second option is to use ESLint Stylistic. The primary focus of this project is on all stylistic rules including code formatting. This project was initiated as ESLint and typescript-eslint teams decided to deprecate formatting/stylistic-related rules.

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
  • JSXHint

    A wrapper around JSHint to allow linting of files containg JSX syntax

    ESLint JSHint Biome quick-lint-js RSLint oxlint deno lint Available since 2013 2010 2023 (Rome 2010) 2020 2020 2022 2020 Underlying technology JS (rewrite w/ Rust announced) JS Rust (Rome: JS) C++ Rust Rust Rust / TS License MIT MIT MIT free GPL v3 MIT MIT MIT Average releases per year 30 5 60 20 2 45 (parent project oxc) 20 npm downloads per week 38M 565K 531K 650 - 63K - GitHub stars 24.6K 9K 12.7K 1.5K 2.7K 9.8K 1.5K Mentioned in any year of State of JS ✅ ❌ ❌ ❌ ❌ ❌ ❌ TS support ✅ ❌ ✅ ✅ ✅ ✅ ✅ JSX support ✅ ✅ w/ [JSXHint](https://github.com/CondeNast/JSXHint) ✅ ✅ ❌ ✅ ❌ Vue.js support ✅ ❌ ❌ ❌ ❌ ✅ ❌ CSS support ✅ ❌ ✅ ❌ ❌ ❌ ❌ Supports code formatting ✅ ❌ ✅ ❌ ❌ ❌ ❌ VS Code integration ✅ ✅ ✅ ✅ ❌ ✅ ✅ IntelliJ integration ✅ ✅ ✅ ❌ ❌ ❌ ✅ Latest version 9.7.0 2.13.6 1.8.3 3.2.0 0.3.2 0.6.0 0.60.1 Configurability extensive minimal advanced zero zero advanced (ESLint v8 config scheme) minimal Third-party plugin support ✅ ❌ ❌ ❌ ❌ ❌ ❌ Third-party rules ✅ ❌ ❌ ❌ ❌ ❌ ❌

  • JSHint

    JSHint is a tool that helps to detect errors and potential problems in your JavaScript code

    Emerging as a fork of JSLint, JSHint was introduced to offer developers more configuration options. Despite this, it remains less flexible than ESLint, particularly in terms of rule customization and plugin support, limiting its adaptability to diverse project needs. The last release dates back to 2022.

  • eslint-stylistic

    Monorepo for ESLint Stylistic plugins and configs

    The npm package eslint-config-prettier eventually disables any ESLint rules dealing with code formatting to avoid conflicts with Prettier. You can see this with the handy ESLint Config Inspector: The second option is to use ESLint Stylistic. The primary focus of this project is on all stylistic rules including code formatting. This project was initiated as ESLint and typescript-eslint teams decided to deprecate formatting/stylistic-related rules.

  • biome

    A toolchain for web projects, aimed to provide functionalities to maintain them. Biome offers formatter and linter, usable via CLI and LSP.

    As part of these new linters, Biome emerged in the wake of the pandemic in 2020, but under the name Rome. Biome was created in mid-2023 as a fork of Rome, which is an active project supported by a growing community. Biome focuses on a broader scope, including code formatting in addition to linting. Concerning linting, language support is not yet on par with ESLint.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • Add ESLint To A React Project

    1 project | dev.to | 29 Jul 2024
  • Make Commit in Your React Project Format-Test-Build Ready with Husky - A Step-by-Step Guide

    4 projects | dev.to | 24 May 2024
  • To Review or Not to Review: The Debate on Mandatory Code Reviews

    3 projects | dev.to | 24 Apr 2024
  • Clean Code 101: Variable Naming Conventions - Part 1

    2 projects | dev.to | 23 Jul 2023
  • Prettier and how to get most out of it

    3 projects | dev.to | 1 Jul 2023

Did you konow that JavaScript is
the 3rd most popular programming language
based on number of metions?