Initial commit

This commit is contained in:
Jonathan Atta
2026-03-03 10:33:56 +01:00
commit da373199e0
139 changed files with 26421 additions and 0 deletions

46
app/.eslintrc.js Normal file
View File

@@ -0,0 +1,46 @@
module.exports = {
root: true,
extends: '@react-native',
rules: {
// React Native
'react-native/no-unused-styles': 'error',
'react-native/no-inline-styles': 'warn',
'react-native/no-color-literals': 'warn',
'react-native/no-raw-text': 'off',
// TypeScript
'@typescript-eslint/no-unused-vars': ['error', { argsIgnorePattern: '^_' }],
'@typescript-eslint/no-explicit-any': 'error',
'@typescript-eslint/explicit-function-return-type': 'off',
'@typescript-eslint/explicit-module-boundary-types': 'off',
'@typescript-eslint/no-non-null-assertion': 'warn',
'@typescript-eslint/no-unused-expressions': 'error',
'@typescript-eslint/no-shadow': 'error',
'no-shadow': 'off', // Désactivé au profit de la version TypeScript
// React/Hooks
'react-hooks/rules-of-hooks': 'error',
'react-hooks/exhaustive-deps': 'warn',
'react/no-unstable-nested-components': ['error', { allowAsProps: true }],
'react/jsx-no-bind': ['warn', { allowArrowFunctions: true }],
'react/no-array-index-key': 'error',
// Code Quality
'no-console': ['warn', { allow: ['warn', 'error'] }],
'prefer-const': 'error',
'no-var': 'error',
'eqeqeq': ['error', 'always'],
'no-duplicate-imports': 'error',
'no-return-await': 'error',
'no-param-reassign': ['error', { props: false }],
'no-throw-literal': 'error',
'max-lines': ['error', { max: 600, skipBlankLines: true }],
'max-len': ['error', { code: 100, ignoreUrls: true, ignoreStrings: true, ignoreTemplateLiterals: true }],
// Style
'arrow-body-style': ['error', 'as-needed'],
'object-shorthand': ['error', 'always'],
'prefer-template': 'error',
'prefer-destructuring': ['error', { array: false, object: true }],
},
};