biome.json 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. {
  2. "$schema": "https://biomejs.dev/schemas/2.3.14/schema.json",
  3. "vcs": {
  4. "enabled": true,
  5. "clientKind": "git",
  6. "useIgnoreFile": true
  7. },
  8. "assist": { "actions": { "source": { "organizeImports": "on" } } },
  9. "linter": {
  10. "enabled": true,
  11. "rules": {
  12. "recommended": true,
  13. "a11y": {
  14. "recommended": false
  15. },
  16. "correctness": {
  17. "noUnusedImports": "error",
  18. "noUnusedVariables": "warn",
  19. "useExhaustiveDependencies": "warn"
  20. },
  21. "suspicious": {
  22. "noExplicitAny": "off",
  23. "noArrayIndexKey": "off",
  24. "noImplicitAnyLet": "off",
  25. "noTemplateCurlyInString": "off",
  26. "useIterableCallbackReturn": "off",
  27. "noShadowRestrictedNames": "off",
  28. "noAssignInExpressions": "off"
  29. },
  30. "style": {
  31. "noNonNullAssertion": "off"
  32. },
  33. "complexity": {
  34. "noStaticOnlyClass": "off"
  35. },
  36. "performance": {
  37. "noImgElement": "off"
  38. }
  39. }
  40. },
  41. "formatter": {
  42. "enabled": true,
  43. "indentStyle": "space",
  44. "indentWidth": 2,
  45. "lineWidth": 100
  46. },
  47. "javascript": {
  48. "formatter": {
  49. "quoteStyle": "double",
  50. "trailingCommas": "es5",
  51. "arrowParentheses": "always",
  52. "semicolons": "always"
  53. }
  54. },
  55. "css": {
  56. "parser": {
  57. "cssModules": true,
  58. "tailwindDirectives": true
  59. },
  60. "formatter": {
  61. "enabled": true
  62. },
  63. "linter": {
  64. "enabled": false
  65. }
  66. },
  67. "overrides": [
  68. {
  69. "includes": ["**/src/components/ui/**"],
  70. "linter": {
  71. "rules": {
  72. "suspicious": {
  73. "noExplicitAny": "off"
  74. },
  75. "correctness": {
  76. "noUnusedVariables": "off"
  77. },
  78. "security": {
  79. "noDangerouslySetInnerHtml": "off"
  80. }
  81. }
  82. }
  83. },
  84. {
  85. "includes": ["**/tests/**", "**/*.test.ts", "**/*.test.tsx"],
  86. "linter": {
  87. "rules": {
  88. "correctness": {
  89. "noUnusedVariables": "off",
  90. "noUnusedImports": "off"
  91. }
  92. }
  93. },
  94. "assist": {
  95. "actions": {
  96. "source": {
  97. "organizeImports": "off"
  98. }
  99. }
  100. }
  101. }
  102. ],
  103. "files": {
  104. "includes": [
  105. "src/**",
  106. "tests/**",
  107. "*.ts",
  108. "*.tsx",
  109. "*.json",
  110. "*.mjs",
  111. "*.cjs",
  112. "!**/node_modules",
  113. "!**/.next",
  114. "!**/dist",
  115. "!**/drizzle",
  116. "!**/docs-site"
  117. ]
  118. }
  119. }