# @auvred/eslint-config

> ⚙️ Opinionated ESLint config for Typescript and Vue projects

Latest version **0.7.2** (published 2024-04-01) · MIT license · 0 weekly downloads

## Install

```sh
npm install @auvred/eslint-config
pnpm add @auvred/eslint-config
yarn add @auvred/eslint-config
bun add @auvred/eslint-config
```

## Health

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

Positive: has types; esm support; no vulnerabilities.

Warnings: low downloads; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.7.2 |
| Published | 2024-04-01 |
| First published | 2023-06-24 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | ESM + CommonJS |
| Node | >=16.0.0 |
| Dependencies | 20 |
| Unpacked size | 39 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 1 |
| Author | auvred |
| Maintainers | auvred |
| Keywords | eslint, eslint-config |

## Links

- npm: https://www.npmjs.com/package/@auvred/eslint-config
- Repository: https://github.com/auvred/eslint-config
- Homepage: https://github.com/auvred/eslint-config#readme
- Issues: https://github.com/auvred/eslint-config/issues
- npm.io page: https://npm.io/package/@auvred/eslint-config

## Dependencies (20)

- [globals](https://npm.io/package/globals.md) ^14.0.0
- [synckit](https://npm.io/package/synckit.md) ^0.9.0
- [local-pkg](https://npm.io/package/local-pkg.md) ^0.5.0
- [@eslint/js](https://npm.io/package/@eslint/js.md) ^8.57.0
- [eslint-plugin-i](https://npm.io/package/eslint-plugin-i.md) ^2.29.1
- [eslint-plugin-n](https://npm.io/package/eslint-plugin-n.md) ^16.6.2
- [eslint-plugin-vue](https://npm.io/package/eslint-plugin-vue.md) ^9.22.0
- [typescript-eslint](https://npm.io/package/typescript-eslint.md) ^7.1.0
- [vue-eslint-parser](https://npm.io/package/vue-eslint-parser.md) ^9.4.2
- [eslint-parser-plain](https://npm.io/package/eslint-parser-plain.md) ^0.1.0
- [eslint-plugin-jsonc](https://npm.io/package/eslint-plugin-jsonc.md) ^2.13.0
- [jsonc-eslint-parser](https://npm.io/package/jsonc-eslint-parser.md) ^2.4.0
- [eslint-plugin-unicorn](https://npm.io/package/eslint-plugin-unicorn.md) ^51.0.1
- [prettier-plugin-jsdoc](https://npm.io/package/prettier-plugin-jsdoc.md) ^1.3.0
- [eslint-plugin-markdown](https://npm.io/package/eslint-plugin-markdown.md) ^3.0.1
- [eslint-merge-processors](https://npm.io/package/eslint-merge-processors.md) ^0.1.0
- [eslint-formatting-reporter](https://npm.io/package/eslint-formatting-reporter.md) ^0.0.0
- [eslint-plugin-perfectionist](https://npm.io/package/eslint-plugin-perfectionist.md) ^2.5.0
- [eslint-config-flat-gitignore](https://npm.io/package/eslint-config-flat-gitignore.md) ^0.1.3
- [eslint-plugin-unused-imports](https://npm.io/package/eslint-plugin-unused-imports.md) ^3.1.0

## 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

- 0.7.2 (latest) — 2024-04-01
- 0.7.1 — 2024-02-28
- 0.7.0 — 2024-02-16
- 0.6.1 — 2024-01-21
- 0.6.0 — 2024-01-03
- 0.5.1 — 2023-11-19
- 0.5.0 — 2023-11-16
- 0.4.0 — 2023-07-20
- 0.3.1 — 2023-07-03
- 0.3.0 — 2023-07-03
- 0.2.2 — 2023-06-26
- 0.2.1 — 2023-06-26
- 0.2.0 — 2023-06-25
- 0.1.0 — 2023-06-24

## README

# @auvred/eslint-config

> Partially based on these awesome configs: [`@so1ve/eslint-config`](https://github.com/so1ve/eslint-prettier-config), [`@antfu/eslint-config`](https://github.com/antfu/eslint-config)

## Features

- Single quotes, no semi, trailing commas
- Formatting with [Prettier](https://github.com/prettier/prettier)
- Typescript and Vue support out-of-box
- Sortable imports

## Usage

### Install

```
pnpm add -D @auvred/eslint-config eslint prettier
```

### Config `eslint.config.js`

In ESM projects:

```js
import { auvred } from '@auvred/eslint-config'

export default auvred()
```

In CJS projects:

```js
module.exports = (async () => {
  const { auvred } = await import('@auvred/eslint-config')

  return auvred()
})()
```

## Configure your editor

### VS Code

Install [`dbaeumer.vscode-eslint`](https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint) extension

```json
{
  "eslint.experimental.useFlatConfig": true,
  "prettier.enable": false,
  "editor.formatOnSave": false,
  "editor.codeActionsOnSave": {
    "source.fixAll.eslint": "explicit",
    "source.organizeImports": "never"
  },
  "eslint.validate": [
    "javascript",
    "javascriptreact",
    "typescript",
    "typescriptreact",
    "vue",
    "html",
    "markdown",
    "json",
    "jsonc",
    "yaml"
  ],
  "eslint.rules.customizations": [
    { "rule": "auvred/prettier", "severity": "off" }
  ]
}
```

> It's better to put these settings to workspace settings (`.vscode/settings.json`)

### coc.nvim

Install [`coc-eslint`](https://github.com/neoclide/coc-eslint) extension

```json
{
  "eslint.experimental.useFlatConfig": true,
  "eslint.autoFixOnSave": true,
  "eslint.validate": [
    "javascript",
    "javascriptreact",
    "typescript",
    "typescriptreact",
    "vue",
    "html",
    "markdown",
    "json",
    "jsonc",
    "yaml"
  ],
  "eslint.rules.customizations": [
    { "rule": "auvred/prettier", "severity": "off" }
  ]
}
```

> It's better to put these settings to workspace settings (`.vim/coc-settings.json`)

### JetBrains IDEs

> If you're working on project with eslint >= 8.23.0, it'd be better to update your IDE to version >= 2022.2.2 because of [this issue](https://youtrack.jetbrains.com/issue/WEB-57089/ESLint8.23-TypeError-this.libOptions.parse-is-not-a-function)

1. Open ESLint settings ([docs](https://www.jetbrains.com/help/webstorm/eslint.html#ws_eslint_configure_scope))
2. Set linting scope to `{**/*,*}.{js,jsx,ts,tsx,vue,html,md,json,jsonc,yaml,yml}`

## License

MIT

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