From 77324f6d8948b7cb32d5744872902050dedef532 Mon Sep 17 00:00:00 2001 From: Raphael Date: Sun, 28 Sep 2025 19:02:49 +0200 Subject: [PATCH] core(package/linter): adding a linter for continuity propose - Added a linter make an mandatory code of conduct for developpers and have the same minimum --- eslint.config.js | 55 ++++++++++++++++++++++++++++++++++++++++++++++++ package.json | 9 ++++++++ 2 files changed, 64 insertions(+) create mode 100644 eslint.config.js create mode 100644 package.json diff --git a/eslint.config.js b/eslint.config.js new file mode 100644 index 0000000..5b8cab6 --- /dev/null +++ b/eslint.config.js @@ -0,0 +1,55 @@ +import js from '@eslint/js'; +import ts from 'typescript-eslint'; + +export default [ + js.configs.recommended, + ...ts.configs.recommended, + { + languageOptions: { + ecmaVersion: 'latest', + }, + rules: { + 'arrow-spacing': ['warn', { before: true, after: true }], + 'brace-style': ['error', 'stroustrup', { allowSingleLine: true }], + 'comma-dangle': ['error', 'always-multiline'], + 'comma-spacing': 'error', + 'comma-style': 'error', + curly: ['error', 'multi-line', 'consistent'], + 'dot-location': ['error', 'property'], + 'handle-callback-err': 'off', + indent: ['error', 'tab'], + 'keyword-spacing': 'error', + 'max-nested-callbacks': ['error', { max: 4 }], + 'max-statements-per-line': ['error', { max: 2 }], + 'no-console': 'off', + 'no-empty-function': 'error', + 'no-floating-decimal': 'error', + 'no-inline-comments': 'error', + 'no-lonely-if': 'error', + 'no-multi-spaces': 'error', + 'no-multiple-empty-lines': ['error', { max: 2, maxEOF: 1, maxBOF: 0 }], + 'no-shadow': ['error', { allow: ['err', 'resolve', 'reject'] }], + 'no-trailing-spaces': ['error'], + 'no-var': 'error', + 'no-undef': 'off', + 'object-curly-spacing': ['error', 'always'], + 'prefer-const': 'error', + quotes: ['error', 'single'], + semi: ['error', 'always'], + 'space-before-blocks': 'error', + 'space-before-function-paren': [ + 'error', + { + anonymous: 'never', + named: 'never', + asyncArrow: 'always', + }, + ], + 'space-in-parens': 'error', + 'space-infix-ops': 'error', + 'space-unary-ops': 'error', + 'spaced-comment': 'error', + yoda: 'error', + }, + }, +]; diff --git a/package.json b/package.json new file mode 100644 index 0000000..f995973 --- /dev/null +++ b/package.json @@ -0,0 +1,9 @@ +{ + "devDependencies": { + "@eslint/js": "^9.36.0", + "@typescript-eslint/eslint-plugin": "^8.44.1", + "@typescript-eslint/parser": "^8.44.1", + "eslint": "^9.36.0", + "typescript-eslint": "^8.44.1" + } +}