🤏 Codely's ESLint + Prettier configuration
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
Install the dependency.
npm install --save-dev eslint-config-codelyAdd 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
fullconfig, which includes thejs,tsand very opinionated Codely configs.import eslintConfigCodely from "eslint-config-codely"; export default [ ...eslintConfigCodely.full, { // Your config here } ]We have a
coursesetting. This is the same as thefullconfig, but with a narrower width due to the zoom used during video recordings:import eslintConfigCodely from "eslint-config-codely"; export default [ ...eslintConfigCodely.course, { // Your config here } ]
[!NOTE]
Some rules enabled by default requirestrict: trueto be set in yourtsconfig.json.
🤔 What it does
- Lints JavaScript using
eslint:recommendedand Prettier. - Additionally, lints TypeScript using
@typescript-eslint/recommendedand@typescript-eslint/recommended-requiring-type-checking. - Uses the following plugins:
import: helps validate proper imports.simple-import-sort: sorts imports.unused-imports: finds and removes unused ES6 module imports.
- Uses rules inside the configs folder.
👌 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
- 🔦 Linting en JavaScript y TypeScript: Used as a template to bootstrap this plugin.
- 🎯 Codely's ESLint Hexagonal Architecture plugin: A plugin that helps you to enforce hexagonal architecture best practises. Valid for your JavaScript or TypeScript projects.
Opinionated skeletons ready for different purposes: