@muxiu1997/eslint-plugin
v1.1.0
Published
MuXiu1997's ESLint rules
Readme
📦 Install
npm install -D @muxiu1997/eslint-plugin📖 Usage
Manual setup
Register the plugin and enable rules in your eslint.config.js:
import muxiu1997 from '@muxiu1997/eslint-plugin'
export default [
{
plugins: {
muxiu1997,
},
rules: {
'muxiu1997/if-empty-return-same-line': 'error',
'muxiu1997/if-non-empty-return-new-line': 'error',
},
},
]Preset (with @antfu/eslint-config)
If you use @antfu/eslint-config, the /preset subpath bundles the plugin, all rules, and turns off the conflicting antfu/if-newline rule:
import antfu from '@antfu/eslint-config'
import muxiu1997Preset from '@muxiu1997/eslint-plugin/preset'
export default antfu({ ... }).append(muxiu1997Preset)📏 Rules
muxiu1997/if-empty-return-same-line
Enforces that an empty return (guard clause) stays on the same line as the if.
// ✅ Correct
if (condition) return
// ❌ Incorrect
if (condition)
return🔧 Auto-fixable.
muxiu1997/if-non-empty-return-new-line
Enforces that a non-empty statement after a braceless if is on a new line.
// ✅ Correct
if (condition)
doSomething()
// ❌ Incorrect
if (condition) doSomething()🔧 Auto-fixable.
🛠 Development
Prerequisites
Setup
git clone https://github.com/MuXiu1997/eslint-plugin.git
cd eslint-plugin
pnpm installScripts
pnpm run build— Build the plugin.pnpm run dev— Build in watch mode.pnpm run lint— Lint and auto-fix.pnpm run test— Run tests.pnpm run typecheck— Type-check without emitting.
📜 License
This project is licensed under the MIT License.
