ESLint is a
static code analysis
In computer science, static program analysis (also known as static analysis or static simulation) is the analysis of computer programs performed without executing them, in contrast with dynamic program analysis, which is performed on programs duri ...
tool for identifying problematic patterns found in
JavaScript
JavaScript (), often abbreviated as JS, is a programming language and core technology of the World Wide Web, alongside HTML and CSS. Ninety-nine percent of websites use JavaScript on the client side for webpage behavior.
Web browsers have ...
code. It was created by Nicholas C. Zakas in 2013.
Rules in ESLint are configurable, and customized rules can be defined and loaded. ESLint covers both
code quality and
coding style issues. ESLint supports current standards of
ECMAScript
ECMAScript (; ES) is a standard for scripting languages, including JavaScript, JScript, and ActionScript. It is best known as a JavaScript standard intended to ensure the interoperability of web pages across different web browsers. It is stan ...
, and experimental syntax from drafts for future standards. Code using
JSX or
TypeScript
TypeScript (abbreviated as TS) is a high-level programming language that adds static typing with optional type annotations to JavaScript. It is designed for developing large applications and transpiles to JavaScript. It is developed by Micr ...
can also be processed when a plugin or transpiler is used.
History
Both
JSLint
JSLint is a static code analysis tool used in software development for checking if JavaScript source code complies with coding rules. It is provided primarily as a browser-based web application accessible through the domain jslint.com, but there ...
and
JSHint were lacking the ability to create additional rules for
code quality and
coding style.
After contributing to JSHint, Zakas decided to create a new
linting tool in June 2013, ESLint (originally called JSCheck, but renamed a month later), where all rules are configurable, and additional rules can be defined or loaded at
run-time.
In April 2016, the ESLint project joined the
jQuery Foundation. Later that year, jQuery Foundation merged with Dojo Foundation to become
JS Foundation as a
Linux Foundation
The Linux Foundation (LF) is a non-profit organization established in 2000 to support Linux development and open-source software projects.
Background
The Linux Foundation started as Open Source Development Labs in 2000 to standardize and prom ...
project.
In October 2017, the ESLint project became a "Graduate Project" of the JS Foundation through its mentorship program.
As of March 2019, ESLint is part of the
OpenJS Foundation, following a merge between the JS Foundation and Node.js Foundation.
Adoption
JetBrains
JetBrains s.r.o. (formerly IntelliJ Software s.r.o.) is a Czech software development private limited company which makes tools for software developers and project managers. The company has its headquarters in Amsterdam, and has offices in Ch ...
provides integrated support for ESLint in their WebStorm code editor, which runs the ESLint software as configured for the current text file, and displays any warnings near the offending lines of code in the editor.
Since 2016, the
Vue.js project provides an ESLint plugin to automatically validate use of Vue.js templates and other features. Since 2018, this plugin is also promoted in the
wizard for creating new Vue.js projects.
In October 2018, the
React project (developed by
Facebook
Facebook is a social media and social networking service owned by the American technology conglomerate Meta Platforms, Meta. Created in 2004 by Mark Zuckerberg with four other Harvard College students and roommates, Eduardo Saverin, Andre ...
) published an official ESLint plugin to help enforce their coding rules.
As of 2025, ESLint is the most commonly used JavaScript linter and is being downloaded over 43,000,000 times per week.
References
External links
*
{{JavaScript
JavaScript programming tools
Static program analysis tools