📦 @breadstone-infrastructure/eslint-config
Opinionated and extensible ESLint configuration for modern web development.
Supports Angular, React, Lit, Vue, and more — with first-class TypeScript integration.
📁 Project Structure
Part of the monorepo breadstone-infrastructure
Package path: libs/infrastructure/eslint-config
Version: see npm
License: MIT
📦 Installation
yarn add -D @breadstone-infrastructure/eslint-config
npm install --save-dev @breadstone-infrastructure/eslint-config
🔧 Usage
Create or update your eslint.config.mjs
:
import { configs } from '@breadstone-infrastructure/eslint-config';
export default [
...configs.base,
...configs.typescript,
...configs.angular,
...configs.react,
...configs.vue,
...configs.lit,
...configs.markdown,
...configs.json,
...configs.html
];
💡 You can combine individual configs as needed.
⚙️ Available Configurations (configs
)
configs.base | Base rules for all projects |
configs.typeScript | TypeScript + import path validation |
configs.angular | Angular best practices |
configs.react | React with JSX and hooks optimizations |
configs.vue | Vue 3 (script setup supported) |
configs.lit | Web Components & Lit element rules |
configs.markdown | Linting for Markdown content |
configs.json | Formatting and validation for JSON |
configs.html | Basic linting for HTML files |
🧪 Example: Minimal Setup for Angular + TypeScript
import { configs } from '@breadstone-infrastructure/eslint-config';
export default [
...configs.base,
...configs.typescript,
...configs.angular
];
🛠 Recommendations
- Use eslint.config.mjs (Flat Config) –
.eslintrc.*
is deprecated.
- In Nx or monorepo setups, you can combine multiple
eslint.config.mjs
files per project or lib.
📦 Publishing
yarn nx run eslint-config:publish
For maintainers only — uses Changesets or manual publishing.
📄 License
MIT © Breadstone