Integrations
ESLint integrates with many development tools and workflows. This page covers the most popular integrations maintained by the community.The projects on this page are community-maintained and not officially supported by the ESLint team. For issues with specific integrations, please contact the integration maintainers.
Editor Integrations
Visual Studio Code
ESLint Extension
Official ESLint extension for VS Code with real-time feedback
Features:
- Real-time linting as you type
- Auto-fix on save
- Quick fixes for violations
- Rule documentation on hover
- Flat config support (eslint.config.js)
JetBrains IDEs
WebStorm, IntelliJ IDEA, PyCharm, RubyMine
Built-in ESLint support in JetBrains IDEs
Enable ESLint
Go to: Settings → Languages & Frameworks → JavaScript → Code Quality Tools → ESLintCheck “Automatic ESLint configuration”
- Automatic detection of eslint.config.js
- Inline error highlighting
- Auto-fix on save
- Code completion for config files
- Integration with VCS
Sublime Text
SublimeLinter-eslint
SublimeLinter-eslint
SublimeLinter-eslint provides ESLint integration for Sublime Text 3/4.Installation:Features:
- Inline error markers
- Status bar information
- Configurable highlighting
- Auto-fix support
Build Next
Build Next
Vim/Neovim
- ALE
- Syntastic
- nvim-lspconfig
- nvim-lint
ALE (Asynchronous Lint Engine)Features:
.vimrc
- Asynchronous linting
- Auto-fix support
- Multiple linters
- LSP integration
Emacs
Flycheck
On-the-fly syntax checking for Emacs
.emacs
Other Editors
Eclipse Orion
ESLint is the default linter
Eclipse IDE
TextMate 2
Brackets
Visual Studio
Build Tool Integrations
Webpack
eslint-webpack-plugin
ESLint plugin for Webpack
extensions- File extensions to lintfix- Enable auto-fixingfailOnError- Fail build on errorsfailOnWarning- Fail build on warningscache- Enable caching for performanceexclude- Patterns to excludeformatter- Output formatter
Rollup
@rollup/plugin-eslint
ESLint plugin for Rollup
Grunt
grunt-eslint
ESLint task for Grunt
Gruntfile.js
Command Line Tools
ESLint Watch
ESLint Watch
eslint-watchWatch files and run ESLint on changes:Usage:Features:
- File watching
- Auto-fix on save
- Custom formatters
- Ignore patterns
- Debouncing
Code Climate CLI
Code Climate CLI
Code Climate CLIRun Code Climate analysis locally:Integrates ESLint with Code Climate quality analysis.
ESLint Nibble
ESLint Nibble
Source Control Integration
Git Hooks
- Husky + lint-staged
- Git Pre-commit Hook
- Overcommit
CI/CD Integration
- GitHub Actions
- GitLab CI
- CircleCI
- Jenkins
.github/workflows/lint.yml
Mega-Linter
Mega-Linter
Linters aggregator for CI, embedding ESLint
.mega-linter.yml
- 70+ linters in one tool
- Auto-fix support
- Pre-configured for CI
- Multi-language support
- Report aggregation
Package Scripts
Common ESLint scripts inpackage.json:
package.json
Integration Best Practices
Editor Integration
Editor Integration
Best practices for editor setup:
-
Use auto-fix on save
-
Configure proper file associations
-
Enable flat config support
-
Show rule IDs in errors
- Helps when configuring rules
- Makes it easy to disable specific rules
Build Tools
Build Tools
Best practices for build integration:
-
Cache results
-
Fail builds appropriately
- Fail on errors: Production
- Warn on errors: Development
-
Run before other plugins
- Catch errors early
- Avoid processing invalid code
-
Use separate CI linting
- Don’t slow down dev builds
- Run full lint in CI/CD
Git Hooks
Git Hooks
Best practices for git hooks:
-
Only lint staged files
-
Auto-fix when possible
- Reduces friction
- Keeps commits clean
-
Provide escape hatch
-
Make hooks fast
- Use caching
- Lint only changed files
CI/CD
CI/CD
Best practices for CI/CD:
-
Fail fast
-
Cache node_modules and .eslintcache
-
Generate reports
-
Set max warnings
Additional Resources
awesome-eslint
Curated list of ESLint integrations and plugins
Command Line
Learn about CLI options for integrations
Formatters
Choose the right formatter for your integration
Configuration
Configure ESLint for your project
Contributing an Integration
If you’ve created an ESLint integration and would like it to be listed here:- Ensure it works with the latest ESLint version
- Provide clear documentation
- Submit a pull request to the ESLint repository
Related Resources
Core Concepts
Understanding ESLint fundamentals
Configuration
Configure ESLint for your workflow
Command Line
CLI options and usage
Formatters
Output format options