{ "root": true, "parserOptions": { "project": "./tsconfig.json" }, "parser": "@typescript-eslint/parser", "extends": [ "airbnb", "airbnb-typescript", "airbnb/hooks", "plugin:@typescript-eslint/recommended", "plugin:@typescript-eslint/recommended-requiring-type-checking", "next/core-web-vitals", "prettier" ], "rules": { "no-console": "off", "no-else-return": "off", "no-underscore-dangle": ["error", { "allow": ["_slug"] }], "import/prefer-default-export": "off", "@typescript-eslint/explicit-module-boundary-types": "off", "@typescript-eslint/no-unused-vars": ["error", { "argsIgnorePattern": "^_" }], "react/require-default-props": "off", "react/function-component-definition": "off", "jsx-a11y/anchor-is-valid": [ "error", { "components": ["Link"], "specialLink": ["hrefLeft", "hrefRight"], "aspects": ["invalidHref", "preferButton"] } ], "import/order": [ "error", { "groups": ["builtin", "external", "internal", ["parent", "sibling"], "object", "index"], "newlines-between": "always", "alphabetize": { "order": "asc", "caseInsensitive": true } } ] }, "overrides": [ { "files": "src/pages/_app.tsx", "rules": { "react/jsx-props-no-spreading": "off" } } ] }