/eslint-config-codely

Opinionated linting configuration considering modern TypeScript best practices and providing consistency to your import statements. Valid for your JavaScript or TypeScript projects 🀟

Primary LanguageJavaScriptGNU Affero General Public License v3.0AGPL-3.0

Codely logo

🀏 Codely's ESLint + Prettier configuration

Codely Open Source CodelyTV Courses

Opinionated linting configuration considering modern TypeScript best practices and providing consistency to your import statements. Valid for your JavaScript or TypeScript projects 🀟

Take a look, play and have fun with this. Stars are welcome 😊

πŸ‘€ How to use

  1. Install the dependency.
npm install --save-dev eslint-config-codely
  1. Add it to your eslint.config.js:
import eslintConfigCodely from "eslint-config-codely";

export default [
    // If you're using js
    ...eslintConfigCodely.js,
    // Or if you're using ts. The ts config includes the js one, so you don't need to include it manually.
    ...eslintConfigCodely.ts,
    {
        // Your config here
    }
]

Also, you can use the full config, which includes the js, ts and very opinionated Codely configs.

import eslintConfigCodely from "eslint-config-codely";

export default [
    ...eslintConfigCodely.full,
    {
        // Your config here
    }
]

We have a course setting. This is the same as the full config, but with a narrower width due to the zoom used in videos:

import eslintConfigCodely from "eslint-config-codely";

export default [
    ...eslintConfigCodely.course,
    {
        // Your config here
    }
]

ℹ️ Please note that some of the rules enabled by default require that you have strict: true in your tsconfig.json.

πŸ€” What it does

πŸ‘Œ Codely Code Quality Standards

Publishing this package we are committing ourselves to the following code quality standards:

  • 🀝 Respect Semantic Versioning: No breaking changes in patch or minor versions.
  • 🀏 No surprises in transitive dependencies: Use the bare minimum dependencies needed to meet the purpose.
  • 🎯 One specific purpose to meet without having to carry a bunch of unnecessary other utilities.
  • βœ… Tests as documentation and usage examples.
  • πŸ“– Well documented ReadMe showing how to install and use.
  • βš–οΈ License favoring Open Source and collaboration.

πŸ”€ Related resources

Opinionated skeletons ready for different purposes: