@moritz-grimm/eslint-config-moritz-grimm
v1.0.1
Published
My preferred eslint config
Maintainers
Readme
eslint-config-moritz-grimm
My preferred ESLint config for JavaScript and TypeScript projects.
Disclaimer: This config is built for my personal use. There might be rough edges or opinionated choices that don't fit your workflow. Feel free to use it, but adjust it to your workflow.
Features
- TypeScript support with type-checked rules
- Stylistic rules via
@stylistic/eslint-plugin - ESLint 9 Flat Config format
- Modular: Import only what you need
Installation
npm install --save-dev @moritz-grimm/eslint-config-moritz-grimmRequirements
- Node.js: >=18.0.0
- ESLint: >=9.0.0
- TypeScript: >=5.0.0 (only if linting TypeScript files)
If you don't have ESLint or TypeScript installed yet:
npm install --save-dev eslint typescriptConfiguration
This config is modular. You can import everything or only specific parts.
Option 1: Full Config (Recommended)
Import all rules (base + stylistic + TypeScript):
import eslintConfig from "eslint-config-moritz-grimm";
export default [
...eslintConfig,
];Option 2: Modular Import
Pick only what you need:
Base rules (core JavaScript/TypeScript linting):
import eslintConfig from "eslint-config-moritz-grimm/base";
export default [
...eslintConfig,
];Stylistic rules (code formatting):
import eslintConfig from "eslint-config-moritz-grimm/stylistic";
export default [
...eslintConfig,
];TypeScript rules (type-checked linting):
import eslintConfig from "eslint-config-moritz-grimm/typescript";
export default [
...eslintConfig,
];You can also combine multiple modules:
import baseConfig from "eslint-config-moritz-grimm/base";
import stylisticConfig from "eslint-config-moritz-grimm/stylistic";
export default [
...baseConfig,
...stylisticConfig,
];Usage
Add these scripts to your package.json:
{
"scripts": {
"lint": "eslint .",
"lint:fix": "eslint . --fix"
}
}Then run:
npm run lint # Check for linting issues
npm run lint:fix # Auto-fix issuesWhat's Included?
For a complete list of all rules and their configuration, see RULES.md.
Quick overview:
- Code Quality: Strict equality, no unreachable code, prefer
const, no duplicate imports - TypeScript: Type-checked linting,
anywarnings, promise handling - Code Style: 4-space indentation, semicolons, double quotes, 1TBS brace style, trailing commas
