TypeScript
This is the ESLint monorepo — the canonical JavaScript/TypeScript static analysis tool that finds and fixes problems in code. It contains the core linting engine, ~290 built-in lint rules, the flat config system, the CLI, the public Node.js API, the `@eslint/js` package, the documentation site (built with 11ty), and comprehensive test suites covering every rule and subsystem.
Tech Stack
Key Features
- Core Linting Engine
- Code Path Analysis
- ~290 Built-in Rules
- Flat Config System
- CLI & Public API
- JavaScript Language Plugin
- Result Caching
- Rule Tester
- Directive Comment Suppression
- Fuzz Testing
- Documentation Site with Algolia Search
Coding Conventions
Standards and patterns used in this codebase
Monorepo structure: apps/ contains deployable applications, packages/ contains shared libraries
Packages: packages/eslint-config-eslintBusiness logic is organized in services/ directory
New services go in lib/services/File naming uses: kebab-case, PascalCase (for components/classes)
Makefile.js, cypress.config.js, eslint.config.js, webpack.config.js, ecma-version.jsConfiguration is centralized in config files
Config files: cypress.config.js, eslint.config.jsDatabase operations are in data layer
Data files: lib/config/flat-config-schema.jsUse index.ts barrel files to export module public API
Each module has index.ts that re-exports public functionsTypes are defined in dedicated type files
Type files: lib/types/index.d.ts, lib/types/rules.d.ts