0.8.3 • Published 8 months ago
@front-utils/linter v0.8.3
Front-utils/linter
The repository contains configuration files for setting up ESLint in the project.
Note: Only ftat eslint configutation
Installation
You can install the package as follows:
npm install @front-utils/linter --save-dev
# or
yarn add @front-utils/linter -D
# or
bun add @front-utils/linter --dev
Usage (ESM)
import {
utils, // utilities
configs // preconfigured configs
} from "@front-utils/linter";
create alias
import { utils } from "@front-utils/linter";
import importPlugin from 'eslint-plugin-import';
export const fullEslintAliases = [
...utils.createEslintAlias({
name: 'pkg',
basePath: '.',
config: {
utils: 'src/infrastructure/utils', // @alias: @pkg/utils -> src/infrastructure/utils
models: 'src/data/models' // @alias: @pkg/models -> src/data/models
}
}),
...utils.createEslintAlias({ name: 'api', basePath: '.', config: {} }),
];
const importPluginConfig = {
plugins: {
import: importPlugin,
},
settings: {
'import/resolver': {
alias: {
map : fullEslintAliases,
extensions: ['.ts', '.tsx', '.json', '.js', 'jsx'],
},
...
},
}
};
create eslint config
import { utils } from "@front-utils/linter";
/**
The config parameter is an object that can contain the following keys:
- babel (type: boolean): can be either true or false.
- react (type: boolean): indicates whether React support is enabled.
- test (type: boolean): indicates whether testing support is enabled.
- ts (type: boolean): indicates whether TypeScript support is enabled.
*/
const eslintConfig = utils.createEslintConfig({ts: true, react: true, babel: true, test: true,}),
rewrite the rules in all plugins.
import { utils } from '@front-utils/linter';
export default [
...utils.createEslintConfig().map((val) => ({
...val,
ignores: ["**/*" ,"!src/**/*"]
}))
];
standart config without react, ts
npm install @front-utils/linter @eslint/js eslint-plugin-compat eslint-plugin-optimize-regex eslint-plugin-promise eslint-plugin-sonarjs eslint-plugin-filenames eslint-plugin-import eslint-plugin-jsx-a11y --save-dev
// eslint.config.js
import {
configs,
} from "@front-utils/linter";
export default configs.standart;
includes standart config + ts rules
npm install @front-utils/linter @eslint/js typescript-eslint eslint-plugin-compat eslint-plugin-optimize-regex eslint-plugin-promise eslint-plugin-sonarjs eslint-plugin-filenames eslint-plugin-import eslint-plugin-jsx-a11y --save-dev
// eslint.config.js
import {
configs,
} from "@front-utils/linter";
export default configs.ts;
includes ts config + react rules
npm install @front-utils/linter @eslint/js typescript-eslint eslint-plugin-react eslint-plugin-react-hooks eslint-plugin-compat eslint-plugin-optimize-regex eslint-plugin-promise eslint-plugin-sonarjs eslint-plugin-filenames eslint-plugin-import eslint-plugin-jsx-a11y globals --save-dev
// eslint.config.js
import {
configs,
} from "@front-utils/linter";
export default configs.react;
only jest rules
npm install @front-utils/linter @eslint/js eslint-plugin-testing-library eslint-plugin-jest-dom --save-dev
// eslint.config.js
import {
configs,
} from "@front-utils/linter";
export default configs.test;
includes all configs + monorepo babel settings
npm install @front-utils/linter @eslint/js typescript-eslint eslint-plugin-react eslint-plugin-react-hooks eslint-plugin-compat eslint-plugin-optimize-regex eslint-plugin-promise eslint-plugin-sonarjs eslint-plugin-filenames eslint-plugin-import eslint-plugin-jsx-a11y eslint-plugin-testing-library eslint-plugin-jest-dom @babel/eslint-parser globals --save-dev
// eslint.config.js
import {
configs,
} from "@front-utils/linter";
export default configs.monorepo;
configured config for use in a monorepo (expects the presence of tsconfig.json, babel.config.js files in the project root, and uses react, typescript technologies)
0.8.1
8 months ago
0.8.0
8 months ago
0.8.3
8 months ago
0.8.2
8 months ago
0.6.3
8 months ago
0.6.2
8 months ago
0.7.0
8 months ago
0.6.1
8 months ago
0.6.0
8 months ago
0.5.4
10 months ago
0.5.3
10 months ago
0.5.6
10 months ago
0.5.5
10 months ago
0.5.2
10 months ago
0.5.1
10 months ago
0.5.0
10 months ago
0.4.0
1 year ago
0.3.0
1 year ago
0.0.2
1 year ago
0.0.1
1 year ago