Skip to content

ICIJ/eslint-config

Repository files navigation


Shared config for ESLint

Unified ESLint configuration for ICIJ projects.

Status
CI checks Github Actions
Latest version Latest version
Release date Release date

📦 Installation

yarn add -D @icij/eslint-config

🚀 Usage

Instead of using extends in package.json or .eslintrc, use a flat config (eslint.config.js) at the root of your project. Flat config for ESLint are the new recommended configuration format introduced in ESLint v8. It uses standard JavaScript modules, offers better performance, and provides more flexibility for conditional and dynamic configuration. To learn more about this format, read the official ESLint flat config documentation.

Examples:

Recommended for JavaScript projects

import icijeslint from '@icij/eslint-config'

export default [
  ...icijeslint.configs.recommended
]

Recommended with TypeScript

import icijeslint from '@icij/eslint-config'

export default [
  ...icijeslint.configs.withTypescript
]

Recommended with TypeScript + Vue + Vitest

import icijeslint from '@icij/eslint-config'

export default [
  ...icijeslint.configs.all
]

🛠 Overriding rules

You can override rules by extending the base config in your eslint.config.js:

import icijeslint from '@icij/eslint-config'

export default [
  ...icijeslint.configs.withTypescript,
  {
    rules: {
      '@typescript-eslint/no-require-imports': 'off'
    }
  }
]

📚 Available Configs

Config name Description
recommended Basic ESLint + stylistic + promises
withTypescript Recommended + TypeScript support
withVue Recommended + Vue (with Vue parser) support
withVitest Recommended + Vitest support
all Recommended + TypeScript + Vue + Vitest support

About

Eslint and Prettier configuration for ICIJ projects

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •