# eslint-config-episource-base

> Episource's base JS ESLint config, following our styleguide

Latest version **0.8.0** (published 2020-10-19) · MIT license · 0 weekly downloads

## Install

```sh
npm install eslint-config-episource-base
pnpm add eslint-config-episource-base
yarn add eslint-config-episource-base
bun add eslint-config-episource-base
```

## Health

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

Positive: no vulnerabilities.

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

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.8.0 |
| Published | 2020-10-19 |
| First published | 2019-08-14 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Node | >= 10.16.2 |
| Dependencies | 8 |
| Unpacked size | 71 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Author | Ivan Santos |
| Maintainers | pragmaticivan |
| Keywords | eslint, eslintconfig, config, episource, javascript, styleguide, es2015, es2016, es2017, es2018 |

## Links

- npm: https://www.npmjs.com/package/eslint-config-episource-base
- Repository: https://github.com/EpisourceLLC/ts-js-styleguide
- Issues: https://github.com/EpisourceLLC/ts-js-styleguide/issues
- npm.io page: https://npm.io/package/eslint-config-episource-base

## Dependencies (8)

- [object.assign](https://npm.io/package/object.assign.md) ^4.1.1
- [object.entries](https://npm.io/package/object.entries.md) ^1.1.2
- [eslint-config-prettier](https://npm.io/package/eslint-config-prettier.md) ^6.12.0
- [eslint-plugin-prettier](https://npm.io/package/eslint-plugin-prettier.md) ^3.1.0
- [@typescript-eslint/parser](https://npm.io/package/@typescript-eslint/parser.md) ^4.4.0
- [confusing-browser-globals](https://npm.io/package/confusing-browser-globals.md) ^1.0.9
- [prettier-config-episource](https://npm.io/package/prettier-config-episource.md) ^0.1.1
- [@typescript-eslint/eslint-plugin](https://npm.io/package/@typescript-eslint/eslint-plugin.md) ^4.4.0

## Alternatives

- [jsforce](https://npm.io/package/jsforce.md) — 851.2K weekly downloads
- [react-native-qrcode-svg](https://npm.io/package/react-native-qrcode-svg.md) — 693.5K weekly downloads
- [@salesforce/plugin-data](https://npm.io/package/@salesforce/plugin-data.md) — 394.9K weekly downloads
- [@backstage/plugin-search-common](https://npm.io/package/@backstage/plugin-search-common.md) — 308.5K weekly downloads
- [@chain-registry/types](https://npm.io/package/@chain-registry/types.md) — 38.4K weekly downloads

## Recent versions

- 0.8.0 (latest) — 2020-10-19
- 0.5.1-alpha.7 (canary) — 2020-06-04
- 0.7.0 — 2020-10-09
- 0.6.0 — 2020-06-08
- 0.5.1-alpha.6 — 2020-06-04
- 0.5.1-alpha.5 — 2020-06-04
- 0.5.1-alpha.4 — 2020-06-04
- 0.5.0 — 2019-11-27
- 0.4.0 — 2019-09-10
- 0.3.0 — 2019-08-16
- 0.2.1 — 2019-08-15
- 0.2.0 — 2019-08-14
- 0.1.1 — 2019-08-14

## README

# eslint-config-episource-base

> Episource's base ESLint config (without React plugins), following our code conventions

[![npm version](https://img.shields.io/npm/v/eslint-config-episource-base.svg)](https://www.npmjs.com/package/eslint-config-episource-base)
[![Build Status](https://travis-ci.org/EpisourceLLC/ts-js-styleguide.svg?branch=latest)](https://travis-ci.org/EpisourceLLC/ts-js-styleguide)

## Usage

To install with all necessary `peerDependencies`, use [install-peerdeps](https://github.com/nathanhleung/install-peerdeps#usage):

```sh
npx install-peerdeps --dev eslint-config-episource-base
```

All exported configs should be added to your [ESlint configuration file](https://eslint.org/docs/user-guide/configuring#extending-configuration-files) `extends`.
For example, in a JSON `.eslintrc`:

```json
{
  "extends": "episource-base"
}
```

### `"extends": "episource-base"`

Our default export contains all of our ESLint rules, including ECMAScript 6+ and Prettier.

### `"extends": ["episource-base", "episource-base/jest]`

Jest-specific rules and environment added to the default export.

### `prettier` Editor Plugin Integration

Unfortunately, super-useful editor plugins like `prettier-atom` and `prettier-vscode` do not load Prettier settings from ESLint config, which is where we load our Prettier options from. To workaround this, add a `.prettierrc.js` or `prettier.config.js` file to your repo root with the following content:

```js
module.exports = require('prettier-config-episource');
```

## Related

- [Episource's overarching ESLint config](https://npmjs.com/eslint-config-episource)
- [Episource's Prettier config](https://npmjs.com/prettier-config-episource)
- [Episource's Javascript code conventions](https://github.com/EpisourceLLC/ts-js-styleguide)

## Development

Consider adding test cases if you're making complicated rules changes, like anything involving regexes. Perhaps in a distant future, we could use literate programming to structure our README as test cases for our .eslintrc?

You can run tests (from the repo root) with `npm test`.

You can make sure this module lints with itself using `npm run lint` (from the repo root).

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