https://github.com/escapace/eslint-config-escapace
Single-entry ESLint baseline for consistent linting across code, tests, and configuration files. Covers TypeScript, JavaScript, optional Vue support, Vitest defaults, YAML, TOML, and JSON variants.
https://github.com/escapace/eslint-config-escapace
Last synced: 4 months ago
JSON representation
Single-entry ESLint baseline for consistent linting across code, tests, and configuration files. Covers TypeScript, JavaScript, optional Vue support, Vitest defaults, YAML, TOML, and JSON variants.
- Host: GitHub
- URL: https://github.com/escapace/eslint-config-escapace
- Owner: escapace
- License: mpl-2.0
- Created: 2018-01-03T07:02:10.000Z (over 8 years ago)
- Default Branch: trunk
- Last Pushed: 2026-03-02T08:39:57.000Z (4 months ago)
- Last Synced: 2026-03-02T12:36:39.295Z (4 months ago)
- Language: TypeScript
- Homepage:
- Size: 2.32 MB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# eslint-config-escapace
Single-entry ESLint baseline for consistent linting across code, tests, and configuration files. Covers TypeScript and JavaScript, optional Vue support, Vitest defaults, YAML including GitHub Actions workflows, TOML, JSON variants, plus `package.json` dependency constraints.
## Install
```sh
pnpm add -D eslint eslint-config-escapace
```
## Usage
Create `eslint.config.mjs`:
```js
import { escapace } from 'eslint-config-escapace'
export default escapace()
```
Defaults include `.gitignore`-aware ignoring and support for `.eslintignore` and `.lintignore`, plus Prettier compatibility via `eslint-config-prettier`.
## Options
All options are optional.
- `typescript`: adjustments for TypeScript
- `javascript`: adjustments for JavaScript
- `vue`: Vue-related adjustments
Example: enable Vue and adjust one Vue rule:
```js
import { escapace } from 'eslint-config-escapace'
export default escapace({
vue: {
enabled: true,
rules: {
'vue/max-template-depth': ['error', { maxDepth: 10 }],
},
},
})
```
## Composition
`compose` combines multiple config pieces into a single ESLint configuration.
```js
import { compose, escapace } from 'eslint-config-escapace'
export default compose(escapace(), {
rules: {
'unicorn/prevent-abbreviations': 'off',
},
})
```