@team23/eslint-config-team23-angular
v18.0.2
Published
A set of eslint rules used by TEAM23 for angular projects
Downloads
243
Readme
eslint-config-team23-angular
A comprehensive ESLint configuration used by TEAM23 for maintaining consistent and strict angular coding standards.
Installation
Add the library to your package.json
as a devDependency
:
npm i --save-dev @team23/eslint-config-team23-angular
To use the shareable config, import the package inside an eslint.config.js
file and add it to the exported array:
// eslint.config.js (ES Module)
import { createAngularEslintConfig } from "@team23/eslint-config-team23-angular";
export default [
...createAngularEslintConfig(),
];
// eslint.config.js (CommonJS)
const { createAngularEslintConfig } = require('@team23/eslint-config-team23-angular');
module.exports = [
...createAngularEslintConfig(),
];
Overriding Settings
You can override settings from the shareable config by adding them directly into your eslint.config.js file after importing the shareable config. For example:
// eslint.config.js
import { createAngularEslintConfig } from "@team23/eslint-config-team23-angular";
export default [
...createAngularEslintConfig(),
// Any settings added here will override team23Angular
{
rules: {
"@angular-eslint/template/cyclomatic-complexity": "error",
}
}
];
Compatibility
Nx
If you are extending plugin:@nx/angular
in your eslint config, you will use the FlatCompat
utility make them available in your flat config. (See the migration guide for more on this process.)
While the Nx config can be used this way in parallel with the team23 Angular config, both configs define the plugin @angular-eslint
, which is not allowed. To use both configs, you can overwrite the plugins
parameter in the FlatCompat result:
// eslint.config.js
import { createAngularEslintConfig } from "@team23/eslint-config-team23-angular";
// Prepare compat following the migration guide
// [...]
export default [
...createAngularEslintConfig(),
...compat
.extends('plugin:@nx/angular')
.map(config => ({
...config,
// Replace the plugins object to prevent redefining
plugins: {},
})),
];
Development
Creating a new version after rule changes
- Update CHANGELOG.md.
- Run npm version [ | major | minor | patch] -m "feat(core): ".
- Push commits and tags.
- Run npm publish --access public to publish the new version to npm.