Skip to content

Various shared ESLint configurations for Zakodium projects

License

Notifications You must be signed in to change notification settings

zakodium/eslint-config

Repository files navigation

eslint-config-zakodium

Various shared ESLint configurations for Zakodium projects.

Installation

npm install -D eslint-config-zakodium eslint

Configuration

Create a file named eslint.config.mjs at the root of the project and extend the config that you want to use. Example:

import { defineConfig } from 'eslint/config';
import ts from 'eslint-config-zakodium/ts';
import adonisV5 from 'eslint-config-zakodium/adonis-v5';

export default defineConfig(ts, adonisV5);

Globals

This package re-exports globals for convenience:

import { defineConfig } from 'eslint/config';
import { globals } from 'eslint-config-zakodium';

export default defineConfig({
  languageOptions: {
    globals: {
      ...globals.node,
    },
  },
});

Monorepo

In a monorepo, you may want to apply different configs for different paths. The defineConfig ESLint helper allows to do that with extends:

import { defineConfig, globalIgnores } from 'eslint/config';
import ts from 'eslint-config-zakodium/ts';
import adonisV5 from 'eslint-config-zakodium/adonis-v5';
import react from 'eslint-config-zakodium/react';

export default defineConfig(
  // Global ignore patterns.
  globalIgnores(['**/build']),
  // Apply TypeScript config on the whole project.
  ts,
  {
    // Apply Adonis v5 config only to the api.
    files: ['api/**'],
    extends: [adonisV5],
  },
  {
    // Apply React config only to the frontend.
    files: ['front/**'],
    extends: [react],
  },
);

Available configs

About

Various shared ESLint configurations for Zakodium projects

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •