This package contains standard ESLint configurations for use in JavaScript and TypeScript packages and services.
Configuration should be managed in the eslintConfig
field in package.json
, rather than a standalone .eslintrc.json
or other file.
A CLI is provided to quickly and easily install standard package versions for ESLint and various plugins, extend the base ESLint config from package.json
, and add standard lint
scripts for using ESLint. An optional arg for frontend
or backend
can be passed to use a specific configuration.
# Standard configuration
npx @unconventional-code/eslint-config standardize-eslint
# Frontend configuration
npx @unconventional-code/eslint-config standardize-eslint frontend
# Backend configuration
npx @unconventional-code/eslint-config standardize-eslint backend
Additional custom configurations should be added to the eslintConfig
field. If the standard package versions and configurations change, you can re-run the CLI and the versions will be updated accordingly. The eslintConfig
is spread-updated, so any custom configurations should be preserved.
{
"extends": ["@unconventional-code/eslint-config"],
}
Note, this package is a root-level configuration package. It is not intended to honor any Prettier or TypeScript or testing standards. It simply provides the raw ESLint configuration for consumers.
Add extends: ['@react-native']