diff --git a/.eslintrc.js b/.eslintrc.js
index e833ff74d86734fb6fff420794f582004f38ad21..58fb1759f8f8aa785f3b9c88d0066b89c1f30ffb 100644
--- a/.eslintrc.js
+++ b/.eslintrc.js
@@ -1,15 +1,12 @@
 module.exports = {
-  parser: '@typescript-eslint/parser',
+  parser: '@typescript-eslint/parser', // Specifies the ESLint parser
   extends: [
     'plugin:react/recommended', // Uses the recommended rules from @eslint-plugin-react
-    'plugin:@typescript-eslint/eslint-recommended', // Uses the recommended rules from @typescript-eslint/eslint-plugin
     'prettier', // Uses eslint-config-prettier to disable ESLint rules from @typescript-eslint/eslint-plugin that would conflict with prettier
     'plugin:prettier/recommended', // Enables eslint-plugin-prettier and displays prettier errors as ESLint errors. Make sure this is always the last configuration in the extends array.
     'plugin:react-hooks/recommended',
-    'plugin:@typescript-eslint/recommended',
-    'plugin:@typescript-eslint/stylistic',
   ],
-  plugins: ['@typescript-eslint'], // Enable TypeScript plugin
+  plugins: ['react', '@typescript-eslint'], // Enable TypeScript plugin
   parserOptions: {
     ecmaVersion: 2020, // Allows for the parsing of modern ECMAScript features
     sourceType: 'module', // Allows for the use of imports
@@ -17,15 +14,35 @@ module.exports = {
       jsx: true, // Allows for the parsing of JSX
     },
     tsconfigRootDir: __dirname,
-    // project: true,
+    project: './tsconfig.json',
   },
   root: true,
+  overrides: [
+    {
+      extends: [
+        'plugin:@typescript-eslint/recommended',
+        'plugin:@typescript-eslint/stylistic',
+      ],
+      files: ['**/*.{ts,tsx}'],
+      parserOptions: {
+        project: true,
+      },
+      rules: {
+        '@typescript-eslint/explicit-function-return-type': 'off',
+        '@typescript-eslint/no-unused-vars': 'warn',
+        '@typescript-eslint/no-explicit-any': 'warn',
+        '@typescript-eslint/prefer-optional-chain': 'warn',
+        '@typescript-eslint/prefer-as-const': 'error',
+        '@typescript-eslint/await-thenable': 'error',
+        '@typescript-eslint/no-var-requires': 'off',
+      },
+    },
+  ],
   rules: {
     // Place to specify ESLint rules. Can be used to overwrite rules specified from the extended configs
     'react/react-in-jsx-scope': 'off',
     'react/prop-types': 'warn',
     'react/self-closing-comp': 'warn',
-    '@typescript-eslint/no-explicit-any': 'warn',
   },
   settings: {
     react: {
diff --git a/tsconfig.json b/tsconfig.json
index 5fe15b3492cb0ac31b8ea3888fac95a0ba8ad14f..fb1d76a6ef018480ce98e8b370813d294f09edaf 100644
--- a/tsconfig.json
+++ b/tsconfig.json
@@ -17,5 +17,5 @@
     "jsx": "react-jsx",
     "useUnknownInCatchVariables": false
   },
-  "include": ["src"]
+  "include": ["**/*.ts", "**/*.tsx"]
 }