eslint-plugin-etc-misc
June 18, 2026 ยท View on GitHub
Opinionated ESLint plugin that combines and curates rules from etc and misc
style linting patterns for TypeScript-heavy codebases.
Credits
This plugin builds on ideas and rule work from:
Installation
npm install --save-dev eslint-plugin-etc-misc eslint typescript
Usage (Flat Config)
import etcMisc from "eslint-plugin-etc-misc";
import tsParser from "@typescript-eslint/parser";
export default [
{
files: ["**/*.{ts,tsx,mts,cts}"],
languageOptions: {
parser: tsParser,
parserOptions: {
ecmaVersion: "latest",
sourceType: "module",
},
},
},
etcMisc.configs.recommended,
];
If your project uses CommonJS config files, require() works too:
// eslint.config.cjs
const etcMisc = require("eslint-plugin-etc-misc");
module.exports = [etcMisc.configs.recommended];
Scoped, hand-picked usage (recommended for mature codebases)
A good way to adopt this plugin is to pick only the rules you want, then scope them manually to the files where they provide the most value.
import tsParser from "@typescript-eslint/parser";
import etcMisc from "eslint-plugin-etc-misc";
export default [
{
files: ["src/**/*.{ts,tsx,mts,cts}"],
languageOptions: {
parser: tsParser,
parserOptions: {
ecmaVersion: "latest",
sourceType: "module",
},
},
plugins: {
"etc-misc": etcMisc,
},
rules: {
"etc-misc/no-assign-mutated-array": "error",
"etc-misc/no-internal": "error",
"etc-misc/typescript/require-this-void": "warn",
},
},
];
Plugin namespace
Rules are namespaced as etc-misc/<rule-name>, for example:
{
plugins: {
"etc-misc": etcMisc,
},
rules: {
"etc-misc/no-t": "error",
},
}
Presets
| Preset |
|---|
๐ข etcMisc.configs.minimal |
๐ก etcMisc.configs.recommended |
๐ etcMisc.configs.strict |
๐ต etcMisc.configs.strictTypeChecked |
๐ด etcMisc.configs.allStrict |
๐ฃ etcMisc.configs.all |
Rules
Fixlegend:๐ง= autofixable๐ก= suggestions availableโ= report only
Preset keylegend:Deprecatedlegend:โ ๏ธ= deprecated
Documentation
- Rules docs: https://nick2bad4u.github.io/eslint-plugin-etc-misc/docs/rules/
- Project docs site: https://nick2bad4u.github.io/eslint-plugin-etc-misc/
Contributors
This project follows the all-contributors specification. Contributions of any kind welcome!