1.0.2 • Published 5 months ago
@zaptun/eslint-config v1.0.2
Introduce
@zaptun/eslint-config sets eslint and prettier configurations, referencing a package does not require each project to write a separate file configuration.
Installation
pnpm add -D @zaptun/eslint-config
Usage
Create eslint.config.js
in your project root:
import globals from 'globals';
import pluginJs from '@eslint/js';
import tseslint from 'typescript-eslint';
import pluginVue from 'eslint-plugin-vue';
import prettier from 'eslint-plugin-prettier';
import eslintConfigPrettier from 'eslint-config-prettier';
import zaptunEslint from '@zaptun/eslint-config';
export default [
{
ignores: [
'**/dist/**',
'**/node_modules/**',
'**/*.min.js',
'build/**',
],
},
{
files: ['**/*.{js,mjs,cjs,ts,vue}'],
languageOptions: {
globals: globals.browser,
},
},
pluginJs.configs.recommended,
...tseslint.configs.recommended,
...pluginVue.configs['flat/recommended'],
eslintConfigPrettier,
{
plugins: {
prettier: prettier,
},
rules: {
'prettier/prettier': [
'error',
{
...zaptunEslint.prettier.config,
},
],
},
ignores: [...zaptunEslint.prettier.ignores],
},
...zaptunEslint.eslint.config,
];
Version 2.0.0 (Current)
Support for ESLint 9.x with flat config system.
Version 1.x.x (Legacy)
For ESLint 8.x and below.
Installation
pnpm add -D @zaptun/eslint-config@1.x.x
Usage
Add to your package.json
:
{
"eslintConfig": {
"extends": "@zaptun/eslint-config",
"ignorePatterns": [
"**/*.md",
"dist/",
"node_modules/",
"build/",
"pnpm-lock.yaml",
"*.md/"
],
"overrides": [
{
"files": [
"*.json"
],
"rules": {
"semi": "off",
"no-unused-expressions": "off"
}
}
]
},
"prettier": "@zaptun/eslint-config/dist/prettier.js",
"prettierIgnore": [
".DS_Store",
".idea",
".editorconfig",
"pnpm-lock.yaml",
".npmrc",
"*.log",
"*.md",
"*.svg",
"*.png",
"*.ico",
"*ignore",
".husky",
".cache",
"dist"
]
}
Supported Languages
- JavaScript (ES6+)
- TypeScript
- Vue
- JSON
License
MIT