UNPKG

@feature-driven/eslint-plugin

Version:

šŸ““ Lint feature-driven rules in full power

95 lines (72 loc) • 3.81 kB
# `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](https://img.shields.io/npm/v/@feature-driven/eslint-plugin?style=flat-square)][npm] [![npm](https://img.shields.io/npm/dw/@feature-driven/eslint-plugin?style=flat-square)][npm] [![npm bundle size](https://img.shields.io/bundlephobia/min/@feature-driven/eslint-plugin?style=flat-square)][npm] [![Hits](https://hits.seeyoufarm.com/api/count/incr/badge.svg?url=https%3A%2F%2Fgithub.com%2Ffeature-driven%2Feslint-plugin&count_bg=%2379C83D&title_bg=%23555555&icon=&icon_color=%23E7E7E7&title=hits&edge_flat=true)](https://hits.seeyoufarm.com) [![GitHub Workflow Status](https://img.shields.io/github/workflow/status/feature-driven/eslint-plugin/Test%20current%20build?label=tests&style=flat-square)](https://github.com/feature-driven/eslint-plugin/actions) [![GitHub commit activity](https://img.shields.io/github/commit-activity/m/feature-driven/eslint-plugin?style=flat-square)](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)*