{ "$schema": "https://biomejs.dev/schemas/2.3.8/schema.json", "vcs": { "enabled": true, "clientKind": "git", "useIgnoreFile": true }, "files": { "includes": [ "**/*.ts", "**/*.tsx", "**/*.js", "**/*.jsx", "**/*.json", "!**/node_modules", "!**/.pnpm-store", "!**/dist" ] }, "formatter": { "enabled": true, "indentStyle": "space", "indentWidth": 2, "lineWidth": 82, "lineEnding": "lf" }, "javascript": { "formatter": { "quoteStyle": "single", "jsxQuoteStyle": "double", "semicolons": "asNeeded", "trailingCommas": "es5", "arrowParentheses": "always" } }, "linter": { "enabled": true, "rules": { "recommended": true, "complexity": { "noExcessiveCognitiveComplexity": { "level": "error", "options": { "maxAllowedComplexity": 25 } }, "noForEach": "off", "useLiteralKeys": "off" }, "correctness": { "noUnusedVariables": "error", "noUnusedImports": "error", "useExhaustiveDependencies": "warn", "useHookAtTopLevel": "error", "noUndeclaredVariables": "error" }, "style": { "useImportType": "error", "useConst": "error", "useTemplate": "error", "useSelfClosingElements": "error", "useFragmentSyntax": "error", "noNonNullAssertion": "error", "useConsistentArrayType": { "level": "error", "options": { "syntax": "shorthand" } }, "useNamingConvention": "off" }, "suspicious": { "noExplicitAny": "error", "noDebugger": "error", "noConsole": "warn", "noArrayIndexKey": "warn", "noAssignInExpressions": "error", "noDoubleEquals": "error", "noRedeclare": "error", "noVar": "error" }, "security": { "noDangerouslySetInnerHtml": "error" }, "a11y": { "useAltText": "error", "useAnchorContent": "error", "useKeyWithClickEvents": "error", "noStaticElementInteractions": "error", "useButtonType": "error", "useValidAnchor": "error" } } }, "overrides": [ { "includes": ["src/main.tsx"], "linter": { "rules": { "style": { "noNonNullAssertion": "off" } } } } ] }