- @typescript-eslint/eslint-plugin
- eslint-config-prettier
- Use as much type-checking as possible
- Turn off rules that are handled natively by Typescript (e.g. no-unused-vars)
- Always enforce use of braces, semi-colons
- Limit spacing between braces and parameters for functions and objects
- Prefer always using access modifiers in classes
- Prefer using cleaner esnext syntax (e.g. prefer-optional-chain)
- Prefer concise code over redundant code (e.g. no-unnecessary-boolean-literal-compare)
- Max length 100