| .. | ||
| conf | ||
| dist | ||
| lib | ||
| LICENSE | ||
| package.json | ||
| README.md | ||
| universal.js | ||
ESLintRC Library
This repository contains the legacy ESLintRC configuration file format for ESLint. This package is not intended for use outside of the ESLint ecosystem. It is ESLint-specific and not intended for use in other programs.
Note: This package is frozen except for critical bug fixes as ESLint moves to a new config system.
Installation
You can install the package as follows:
npm install @eslint/eslintrc --save-dev
# or
yarn add @eslint/eslintrc -D
Usage
The primary class in this package is FlatCompat, which is a utility to translate ESLintRC-style configs into flat configs. Here's how you use it inside of your eslint.config.js file:
import { FlatCompat } from "@eslint/eslintrc";
import js from "@eslint/js";
import path from "path";
import { fileURLToPath } from "url";
// mimic CommonJS variables -- not needed if using CommonJS
const __filename = fileURLToPath(import.meta.url);
const __dirname = path.dirname(__filename);
const compat = new FlatCompat({
    baseDirectory: __dirname,                  // optional; default: process.cwd()
    resolvePluginsRelativeTo: __dirname,       // optional
    recommendedConfig: js.configs.recommended, // optional
    allConfig: js.configs.all,                 // optional
});
export default [
    // mimic ESLintRC-style extends
    ...compat.extends("standard", "example"),
    // mimic environments
    ...compat.env({
        es2020: true,
        node: true
    }),
    // mimic plugins
    ...compat.plugins("airbnb", "react"),
    // translate an entire config
    ...compat.config({
        plugins: ["airbnb", "react"],
        extends: "standard",
        env: {
            es2020: true,
            node: true
        },
        rules: {
            semi: "error"
        }
    })
];
License
MIT License