@feature-driven/eslint-plugin
Version:
š Lint feature-driven rules in full power
95 lines (72 loc) ⢠3.81 kB
Markdown
# `wip` [@feature-driven/eslint-plugin](https://www.npmjs.com/package/@feature-driven/eslint-plugin)
[npm]: https://www.npmjs.com/package/@feature-driven/eslint-plugin
[][npm]
[][npm]
[][npm]
[](https://hits.seeyoufarm.com)
[](https://github.com/feature-driven/eslint-plugin/actions)
[](https://github.com/feature-driven/eslint-plugin/commits)
> **DISCLAIMER**: Work in process, and accordingly:
> - Here is **approximate** description
> - First stable version will be signed as **`0.1.0`**
> - For a while - you can try *simplified linting* by [@feature-driven/eslint-config](https://github.com/feature-driven/eslint-config)
<!-- TODO: add badges -->
<img src="https://avatars3.githubusercontent.com/u/74538205?s=120&v=4" align="right">
Linting of [Feature Driven Development](https://github.com/feature-driven/wiki) principles
- Control **Decentralization**
- Control **Co-location**
- Control **Explicit sharing**
- Control **Decoupling && isolating**
- Control **Disposability**
<!-- TODO [**Propose or contribute a new rule ā”**](.github/contributing.md) -->
<!-- Uncomment if will be needed
## Table of contents
TODO* [Overview](#overview)
* [Installation](#installation)
* [Usage](#usage)
* [Supported Rules](#supported-rules)
* [Also](#also)
-->
<!-- TODO: ## Overview -->
## Get started
1. You'll first need to install [ESLint](http://eslint.org):
```sh
$ npm i eslint --save-dev
```
2. Next, install `@feature-driven/eslint-plugin`:
```sh
$ npm install --save-dev @feature-driven/eslint-plugin
```
3. Add `@feature-driven/eslint-plugin` to the plugins section of your `.eslintrc` configuration file. You can omit the `eslint-plugin` suffix:
```json
{
"plugins": ["@feature-driven"]
}
```
4. Then configure the rules you want to use under the rules section.
```json
{
"rules": {
"@feature-driven/rule-name": 2
}
}
```
## Rules
> See [full list: with implemented and planned rules](/docs/README.md)
[r:explicit-abstractions]: https://github.com/feature-driven/eslint-plugin/blob/master/docs/rules/explicit-abstractions.md
- [`explicit-abstractions`][r:explicit-abstractions] - Restrict allowed-list of project abstractions in src (app/features/pages/shared)
> This rule aims to specify and unify *feature-driven* project structure
## Also
- [FAQ](./FAQ.md)
- [Releases & Changelog](https://github.com/feature-driven/eslint-plugin/releases)
- **How can you help?**
- ā Rate us on GitHub, if it's worth on your opinion
> And if this solution must keep to developing
- š« Have a look at our [contributing](./CONTRIBUTING.md) guide
> **Everything is matter** - from *feedback* to *participating* in development!
>
> *Commit like nobody sees, Push like nobody hears*
ā
ā
ā
> *Repo organizing inspired by [feature-driven/template-github](https://github.com/feature-driven/template-github)*