Lesson 8 / 25
Advanced ESLint Configuration
Use environments, globals, and overrides for granular control.
Environments and globals
Environments define globals (browser, node, es2021). Globals tell ESLint which variables are predefined. Use overrides to apply different rules to different file patterns.
Using overrides
Apply stricter rules to source files but looser rules to tests.
{
"env": { "browser": true, "es2021": true },
"rules": { "no-console": "error" },
"overrides": [
{
"files": ["**/*.test.js"],
"env": { "jest": true },
"rules": { "no-console": "off" }
}
]
}
Output:
Overrides configured: stricter prod, lenient tests
Selective strictness
Test files and scripts often need looser rules. Use overrides to customize rules per directory or file pattern without duplicating your base config.
Quick check
Quick check: What do 'overrides' allow you to do?
- Apply different rules to different files or directories.
- Speed up ESLint.
- Disable all rules at once.
Answer
Apply different rules to different files or directories. — 'overrides' is a powerful feature for file-specific configuration, perfect for testing different rule strictness levels.