https://github.com/andreapontrandolfo/sheriff
A comprehensive and opinionated Typescript-first ESLint configuration.
https://github.com/andreapontrandolfo/sheriff
astro code-quality eslint javascript jest lint linting lodash nextjs playwright prettier react storybook typescript vitest
Last synced: 11 days ago
JSON representation
A comprehensive and opinionated Typescript-first ESLint configuration.
- Host: GitHub
- URL: https://github.com/andreapontrandolfo/sheriff
- Owner: AndreaPontrandolfo
- License: mit
- Created: 2022-09-25T14:40:07.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2025-03-09T19:18:07.000Z (about 1 month ago)
- Last Synced: 2025-04-03T05:09:44.763Z (20 days ago)
- Topics: astro, code-quality, eslint, javascript, jest, lint, linting, lodash, nextjs, playwright, prettier, react, storybook, typescript, vitest
- Language: TypeScript
- Homepage: https://www.eslint-config-sheriff.dev
- Size: 12.8 MB
- Stars: 154
- Watchers: 3
- Forks: 9
- Open Issues: 21
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
![]()
Sheriff
✨ A comprehensive and opinionated TypeScript-first ESLint configuration ✨
[](CODE_OF_CONDUCT.md)
[](https://www.npmjs.com/package/eslint-config-sheriff)
## 🥳 Overview
This repository is a monorepo that hosts the sourcecode of the following projects:
| Link | Source | Description | Version |
| ------------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [Sheriff docs website](https://www.eslint-config-sheriff.dev) | [docs-website](https://github.com/AndreaPontrandolfo/sheriff/tree/master/apps/docs-website) | Sheriff documentation website | |
| [`eslint-config-sheriff`](https://www.npmjs.com/package/eslint-config-sheriff) | [eslint-config-sheriff](https://github.com/AndreaPontrandolfo/sheriff/tree/master/packages/eslint-config-sheriff) | A comprehensive and opinionated TypeScript-first ESLint configuration | [](https://www.npmjs.com/package/eslint-config-sheriff) |
| [`@sherifforg/create-config`](https://www.npmjs.com/package/@sherifforg/create-config) | [sheriff-create-config](https://github.com/AndreaPontrandolfo/sheriff/tree/master/packages/sheriff-create-config) | Package used to create Sheriff-based ESLint configs | [](https://www.npmjs.com/package/@sherifforg/create-config) |
| [`@sherifforg/cli`](https://www.npmjs.com/package/@sherifforg/cli) | [sheriff-cli](https://github.com/AndreaPontrandolfo/sheriff/tree/master/packages/sheriff-cli) | The Sheriff CLI. Used to manage Sheriff-based ESLint configs | [](https://www.npmjs.com/package/@sherifforg/cli) |## 🚀 Quickstart
```bash
npm init @sherifforg/config
```## 📋 Docs
Visit the [official docs](https://www.eslint-config-sheriff.dev/docs/introduction) to learn more.
## 📝 Blog
You can follow the latest updates on the project in the [official blog](https://www.eslint-config-sheriff.dev/blog).
## 💌 Acknowledgments
For some of this configuration, [eslint-config-red](https://github.com/GrosSacASac/JavaScript-Set-Up/blob/master/js/red-javascript-style-guide/index.js) was partially used as a base. Additionally, inspiration was drawn from [eslint-config-airbnb](https://github.com/airbnb/javascript/tree/master/packages/eslint-config-airbnb) for some of the rules in `no-restricted-syntax`.
I don't take any attribution for the rules in the various eslint-plugins used here (except for the few that I personally created).
Please consider starring the respective projects for the awesome work their authors made. Sheriff wouldn't be possible without their efforts.
[Full list of the plugins integrated in Sheriff](https://www.eslint-config-sheriff.dev/docs/eslint-plugins).