eslint-config-phanective
ESLint config for my own projects.
Install
Set overrides
in package.json first:
"overrides": {
"@typescript-eslint/eslint-plugin": "latest"
}
Then install eslint and this package:
npm install -D eslint eslint-config-phanective
Usage
Create an .eslintrc.js like following on the project root:
const { join } = require("path");
module.exports = {
extends: "phanective",
root: true,
env: {
browser: true,
},
parserOptions: {
project: join(__dirname, "./tsconfig.eslint.json"),
},
overrides: [{
files: [ "*.js", "**/*.js" ],
parserOptions: {
sourceType: "module",
},
}],
};
Also create .eslintrc.js in the test directory for test-specific configs:
module.exports = {
extends: "phanective/jest",
};
Supported configs:
- phanective
- phanective/node
- phanective/react
- phanective/next
- phanective/vue+js (Vue 3)
- phanective/vue+ts (Vue 3)
- phanective/nuxt+js (Nuxt 3)
- phanective/nuxt+ts (Nuxt 3)
- phanective/jest
Test with realworld projects
- Generate npm package
$ cd /path/to/eslint-config-phanective
$ npm pack
- Install new package on a realworld project
$ cd /path/to/target/project
$ npm install ../eslint-config-phanective/eslint-config-phanective-2022.1.1.tgz
- Test
# $ cd /path/to/target/project
$ npm run lint