eslint-plugin-shuunen
v0.4.0
Published
My personal ESLint configs & rules
Downloads
602
Maintainers
Readme
eslint-plugin-shuunen
Demo
There not much to show, but here is a super useful eslint rule from this package in action :
Installation
pnpm install -D eslint-plugin-shuunen
ES Module
In your eslint.config.js
:
import shuunen from 'eslint-plugin-shuunen'
export default [ // 🥗 compose your salad
...shuunen.configs.base, // 🥚 eslint/all + unicorn/all + perfectionist/natural + jsdoc
// ...shuunen.configs.browser, // 🥑 globals for browser
// ...shuunen.configs.node, // 🥕 globals for node
// ...shuunen.configs.typescript, // 🍅 typescript/all
// ...shuunen.configs.vue, // 🥔 vue/recommended
]
CommonJS (legacy)
In your eslint.config.cjs
:
const shuunen = require('eslint-plugin-shuunen')
/** @type {import('eslint').Linter.Config} */
module.exports = [
...shuunen.configs.base,
...shuunen.configs.browser,
...shuunen.configs.node,
...shuunen.configs.typescript,
...shuunen.configs.vue,
]
You can adjust the rules to your taste :
module.exports = [
...shuunen.configs.base,
{
rules: {
'shuunen/some-rule': 'off',
'unicorn/some-other-rule': 'warn',
},
},
]
Features
- [x] awesomely opinionated plugins & rules :sparkles:
TODO
- [ ] use a plugin for react
- [ ] merge typescript into base because it works on js ^^
- [ ] search interesting plugins from eslint-plugin-antfu
- [ ] search interesting plugins from eslint-plugin-hardcore
- [ ] test to build a index.min.js file and see how it impact :
- [ ] the install size
- [ ] the performance
- [ ] the source code readability in case of error
Thanks
- Anthony Fu : for his config, for the inspiration
- Dependency-cruiser : handy tool to validate and visualize dependencies
- Esbuild : an extremely fast JavaScript bundler and minifier
- Eslint : super tool to find & fix problems
- Github : for all their great work year after year, pushing OSS forward
- Npm-parallel : to keep my npm scripts clean & readable
- Repo-checker : eslint cover /src code and this tool the rest ^^
- Shields.io : for the nice badges on top of this readme
- Sindre Sorhus : for his awesome eslint-plugin-unicorn, for the inspiration
- V8 : simple & effective cli for code coverage
- Vitest : super fast vite-native testing framework
- Watchlist : recursively watch a list of directories & run a command on any file system