{ "$schema": "https://biomejs.dev/schemas/2.5.1/schema.json", "vcs": { "enabled": true, "clientKind": "git", "useIgnoreFile": true }, "assist": { "enabled": true, "actions": { "source": { "organizeImports": { "level": "on", "options": { "groups": [ "react", "react/**", ":BLANK_LINE:", "next/**", ":BLANK_LINE:", ":PACKAGE:", ":BLANK_LINE:", ":ALIAS:", ":BLANK_LINE:", ":PATH:" ] } } } } }, "files": { "ignoreUnknown": true, "includes": [ "**", "!.github", "!.husky", "!node_modules", "!.next", "!dist", "!out", "!src/components/ui", "!src/components/calendar" ] }, "formatter": { "enabled": true, "formatWithErrors": false, "indentStyle": "space", "indentWidth": 2, "lineEnding": "lf", "lineWidth": 120, "attributePosition": "auto", "bracketSameLine": false, "bracketSpacing": true, "expand": "auto", "useEditorconfig": true }, "linter": { "enabled": true, "rules": { "preset": "recommended", "a11y": { "noLabelWithoutControl": { "level": "error", "options": { "inputComponents": ["Checkbox", "Switch"] } } }, "correctness": { "noUndeclaredVariables": "error", "noNestedComponentDefinitions": "error", "noUndeclaredDependencies": "error" }, "nursery": { "useSortedClasses": "on", "useNullishCoalescing": "error", "noFloatingPromises": "error", "noMisusedPromises": "error" }, "performance": { "noImgElement": "warn" }, "style": { "noCommonJs": "error", "noHeadElement": "warn", "noNamespace": "error", "useAsConstAssertion": "error", "useSelfClosingElements": "error", "noNestedTernary": "warn", "noParameterAssign": "error", "noInferrableTypes": "error", "noUselessElse": "error", "useFilenamingConvention": "error" }, "suspicious": { "noArrayIndexKey": "warn", "noConstantBinaryExpressions": "error", "noEmptyBlockStatements": "error", "noUnknownAtRules": "off", "noImportCycles": "error", "noUnnecessaryConditions": "warn" }, "complexity": { "noImportantStyles": "off" } }, "domains": { "next": "recommended", "react": "recommended" } }, "css": { "parser": { "tailwindDirectives": true } }, "javascript": { "formatter": { "jsxQuoteStyle": "double", "quoteProperties": "asNeeded", "trailingCommas": "all", "semicolons": "always", "arrowParentheses": "always", "bracketSameLine": false, "quoteStyle": "double", "attributePosition": "auto", "bracketSpacing": true } }, "html": { "formatter": { "indentScriptAndStyle": false, "selfCloseVoidElements": "always" } } }