https://github.com/ildella/nostandard
ESLint config for bad people. Flat config only (v9+). Includes Stylistic. Optional svelte and vitest configs.
https://github.com/ildella/nostandard
eslint eslint-config eslint-svelte
Last synced: 2 months ago
JSON representation
ESLint config for bad people. Flat config only (v9+). Includes Stylistic. Optional svelte and vitest configs.
- Host: GitHub
- URL: https://github.com/ildella/nostandard
- Owner: ildella
- License: mit
- Created: 2025-01-05T13:00:57.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2026-03-26T13:00:21.000Z (3 months ago)
- Last Synced: 2026-03-27T22:37:34.072Z (3 months ago)
- Topics: eslint, eslint-config, eslint-svelte
- Language: JavaScript
- Homepage:
- Size: 157 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# NoStandard
A consolidation of my old [eslint configurations](https://github.com/ildella/eslint-config-node-moar) ported to ESLint 9+ and Flat configuration.
## What's in here?
- **base** — core ESLint rules for correctness and best practices
- **style** — opinionated formatting via [Stylistic](https://eslint.style/)
- **svelte** — Svelte rules via `eslint-plugin-svelte` (optional, subpath import)
- **vitest** — Vitest rules via `@vitest/eslint-plugin` (optional, subpath import)
## Usage
```shell
yarn add -D eslint-nostandard
pnpm add -D eslint-nostandard
npm install -D eslint-nostandard
```
Basic usage for `eslint.config.js`:
```js
import {nostandard} from 'eslint-nostandard'
export default [
...nostandard.recommended, // base + style
// Or pick individually:
// nostandard.base,
// nostandard.style,
]
```
### Svelte
Install the optional peer dependency, then import from the subpath:
```shell
yarn add -D eslint-plugin-svelte svelte
```
```js
import {nostandard} from 'eslint-nostandard'
import svelte from 'eslint-nostandard/svelte'
export default [
...nostandard.recommended,
...svelte,
]
```
### Vitest
Install the optional peer dependency, then import from the subpath:
```shell
yarn add -D @vitest/eslint-plugin
```
```js
import {nostandard} from 'eslint-nostandard'
import vitest from 'eslint-nostandard/vitest'
export default [
...nostandard.recommended,
vitest,
]
```
## Why not NeoStandard then?
There are too many useless dependencies. Especially I do not consider usable anything that gives for granted that developers use React, or any other specific framework. Why would I want anything JSX or React in my NodeJS or Svelte projects?
For the same reason, I do not want `eslint-plugin-n` as a default dependency.
Finally, they do not respect my golden rule.
## Golden Rule
If it breaks, it's an error.
If it does not break, it's a warning.
With one and only one special exception, as all good rules must have an exception.