Skip to content

💄 @kitql/eslint-config

To have eslint & prettier in your project, you need 20 dep, files, … and it’s a pain to maintain in each project.

Here the idea is to reduce as much as possible the config on your end. (Of course, you can still tune things)

Installation

Terminal window
npm i -D @kitql/eslint-config

add this to your .npmrc

public-hoist-pattern[]=*eslint*
public-hoist-pattern[]=*prettier*
public-hoist-pattern[]=*globals*

eslint config

eslint.config.js
import { kitql } from '@kitql/eslint-config'
/** @type { import("eslint").Linter.Config[] } */
export default [
...kitql(),
{
name: 'app:rules',
rules: {
// Some custom things?
},
},
]

You can check your config running this tool

Terminal window
npx @eslint/config-inspector

prettier config

.prettierrc.mjs
import { kitql } from '@kitql/eslint-config/.prettierrc.mjs'
export default {
...kitql(),
// Some custom things?
}

ignore things with

.prettierignore
.DS_Store
node_modules
/build
/.svelte-kit
/package
.env
.env.*
!.env.example
# Ignore files for PNPM, NPM and YARN
package.json
pnpm-lock.yaml
package-lock.json
yarn.lock
# Ignore files that are project specific
/db
/src/lib/ROUTES.ts

Add this to your package.json

package.json
scripts: {
"//// ---- BEST PRACTICES ---- ////": "",
"format": "kitql-lint -f",
"lint": "kitql-lint",
}