diff --git a/packages/eslint-config/base.js b/packages/eslint-config/base.js new file mode 100644 index 0000000..bc35bef --- /dev/null +++ b/packages/eslint-config/base.js @@ -0,0 +1,17 @@ +import js from "@eslint/js"; +import eslintConfigPrettier from "eslint-config-prettier"; +import tseslint from "typescript-eslint"; +import turboPlugin from "eslint-plugin-turbo"; + +export default [ + { ignores: ["dist/**", "node_modules/**"] }, + js.configs.recommended, + ...tseslint.configs.recommended, + eslintConfigPrettier, + { + plugins: { turbo: turboPlugin }, + rules: { + "turbo/no-undeclared-env-vars": "warn", + }, + }, +]; diff --git a/packages/eslint-config/next.js b/packages/eslint-config/next.js new file mode 100644 index 0000000..a3fe0f4 --- /dev/null +++ b/packages/eslint-config/next.js @@ -0,0 +1,6 @@ +import baseConfig from "./base.js"; + +export default [ + ...baseConfig, + { ignores: [".next/**", "out/**"] }, +]; diff --git a/packages/eslint-config/package.json b/packages/eslint-config/package.json new file mode 100644 index 0000000..b813bb7 --- /dev/null +++ b/packages/eslint-config/package.json @@ -0,0 +1,20 @@ +{ + "name": "@repo/eslint-config", + "private": true, + "version": "0.0.0", + "type": "module", + "exports": { + "./base": "./base.js", + "./next": "./next.js", + "./react-internal": "./react-internal.js" + }, + "devDependencies": { + "@eslint/js": "^9.20.0", + "@typescript-eslint/eslint-plugin": "^8.25.0", + "@typescript-eslint/parser": "^8.25.0", + "eslint": "^9.20.0", + "eslint-config-prettier": "^10.1.0", + "eslint-plugin-turbo": "^2.4.0", + "typescript-eslint": "^8.25.0" + } +} diff --git a/packages/eslint-config/react-internal.js b/packages/eslint-config/react-internal.js new file mode 100644 index 0000000..6079407 --- /dev/null +++ b/packages/eslint-config/react-internal.js @@ -0,0 +1,3 @@ +import baseConfig from "./base.js"; + +export default [...baseConfig];