# eslint-plugin-sort-requires

> ESLint rule to enforce sorting of variable declarations in a group of require() calls

Latest version **2.1.0** (published 2016-11-01) · MIT license · 0 weekly downloads

## Install

```sh
npm install eslint-plugin-sort-requires
pnpm add eslint-plugin-sort-requires
yarn add eslint-plugin-sort-requires
bun add eslint-plugin-sort-requires
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 2.1.0 |
| Published | 2016-11-01 |
| First published | 2016-10-01 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 0 |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 5 |
| Author | Kenneth Chung |
| Maintainers | kentor |
| Keywords | commonjs, eslint, eslint-plugin, eslint-plugin-sort, eslintplugin, require, sort-requires, sorting |

## Links

- npm: https://www.npmjs.com/package/eslint-plugin-sort-requires
- Repository: https://github.com/kentor/eslint-plugin-sort-requires
- Issues: https://github.com/kentor/eslint-plugin-sort-requires/issues
- npm.io page: https://npm.io/package/eslint-plugin-sort-requires

## Alternatives

- [eslint-plugin-sonarjs](https://npm.io/package/eslint-plugin-sonarjs.md) — 2.9M weekly downloads
- [eslint-config-expo](https://npm.io/package/eslint-config-expo.md) — 1.5M weekly downloads
- [@matter/protocol](https://npm.io/package/@matter/protocol.md) — 63.5K weekly downloads
- [@eventcatalog/linter](https://npm.io/package/@eventcatalog/linter.md) — 24.8K weekly downloads
- [@inrupt/eslint-config-base](https://npm.io/package/@inrupt/eslint-config-base.md) — 4.5K weekly downloads

## Recent versions

- 2.1.0 (latest) — 2016-11-01
- 2.0.0 — 2016-10-31
- 1.0.1 — 2016-10-03
- 1.0.0 — 2016-10-01

## README

# eslint-plugin-sort-requires

[![Build Status](https://travis-ci.org/kentor/eslint-plugin-sort-requires.svg?branch=master)](https://travis-ci.org/kentor/eslint-plugin-sort-requires) [![npm](https://img.shields.io/npm/v/eslint-plugin-sort-requires.svg)](https://www.npmjs.com/package/eslint-plugin-sort-requires)

ESLint rule to enforce sorting of variable declarations in a group of `require()` calls

## Installation

You'll first need to install [ESLint](http://eslint.org):

```
$ npm install eslint --save-dev
```

Next, install `eslint-plugin-sort-requires`:

```
$ npm install eslint-plugin-sort-requires --save-dev
```

**Note:** If you installed ESLint globally (using the `-g` flag) then you must
also install `eslint-plugin-sort-requires` globally.

## Usage

Add `sort-requires` to the plugins section of your `.eslintrc` configuration
file. You can omit the `eslint-plugin-` prefix:

```json
{
  "plugins": [
    "sort-requires"
  ]
}
```


Then configure the rules you want to use under the rules section.

```json
{
  "rules": {
    "sort-requires/sort-requires": 2
  }
}
```

## sort-requires

Enforce alphabetically sorting of variable declarations in a group of
`require()` calls. A group is a section of code where there are no blank lines
between the end of one variable declaration node with a `require()` call the
beginning of the next.

#### Good
```js
var a = require('a');
var c = require('b');

var b = require('b');

// const comes before let
const e = require('e');
let d = require('d');
```

#### Bad
```js
var b = require('b');
var a = require('a');

var d =
  require('d');
var c = require('c');

// const comes before let
let e = require('e');
const f = require('f');
```

See [tests/lib/rules/sort-requires.js](tests/lib/rules/sort-requires.js) for
more cases.

## Changelog

### 2.1.0
* change report message and location to entire require group
* improve eslint auto fixing by requiring only a single pass

### 2.0.0
* add eslint auto fixing
* remove jscodeshift fixer

### 1.0.0
* initial build

## License

[MIT](LICENSE.txt)

---
_Source: https://npm.io/package/eslint-plugin-sort-requires · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
