Skip to content

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

License

Notifications You must be signed in to change notification settings

CodelyTV/eslint-config-codely

Repository files navigation

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: