eslint-config-imperium
v3.2.0
Published
Comprehensive ESLint configuration
Maintainers
Readme
Imperium ESLint Config
This is a strict configuration for ESLint. It is meant for those who have never found a linter annoying before.
Currently supports ESLint v9 and the flat config only.
Quickstart
- Install dependencies:
npm i --save-dev eslint eslint-config-imperium - Create
eslint.config.js(see Example Configuration) - Run your linter:
npm run lint(ornpx eslint)
Example Configuration
// eslint.config.js
import { auto } from "eslint-config-imperium";
export default [auto, stylistic];Configurations
This package is modular and includes several configurations intended to be enabled for certain environments. If you don't know what you need, you should probably use auto. Otherwise, pick a combination of the above configurations.
Main
auto- Special configuration in which some of the below configurations are enabledbase- Base framework and environment agnostic configuration
Frameworks / Environments
browser- Browser environment configurationnode- Node environment configurationreact- React configurationsolid- Solid configurationtypescript- TypeScript configurationvitest- Vitest configuration
Style
perfectionist- Perfectionist configuration for objects orderprettier- Prettier configurationstylistic- Stylistic configuration
You should not enable prettier and stylistic at the same time.
Plugins
This is a list of the currently used ESLint plugins:
@stylistic/eslint-plugin@typescript-eslint/eslint-plugin@vitest/eslint-plugineslint-plugin-neslint-plugin-perfectionisteslint-plugin-prettiereslint-plugin-promiseeslint-plugin-reacteslint-plugin-react-hookseslint-plugin-react-refresheslint-plugin-regexpeslint-plugin-solideslint-plugin-unicorn
Building
- Clone the repository:
git clone https://github.com/Delemangi/eslint-config-imperium.git - Install the dependencies:
npm i - Build the package:
npm run build
After this, the build output will be placed in the lib folder. You may use it directly, pack it or whatever you'd like afterwards.
License
This project is licensed under the terms of the MIT license.
