@marcalexiei/biome-config
Version:
Custom BiomeJS config
344 lines (343 loc) • 11 kB
JSON
{
"$schema": "../node_modules/@biomejs/biome/configuration_schema.json",
"vcs": {
"enabled": true,
"clientKind": "git",
"useIgnoreFile": true
},
"assist": {
"actions": {
"source": {
"organizeImports": "on"
}
}
},
"formatter": {
"useEditorconfig": true,
"enabled": true,
"lineEnding": "lf",
"indentStyle": "space",
"indentWidth": 2
},
"json": {
"formatter": {
"enabled": true,
"trailingCommas": "none",
"lineWidth": 80,
"indentStyle": "space",
"indentWidth": 2,
"lineEnding": "lf"
}
},
"javascript": {
"formatter": {
"enabled": true,
"arrowParentheses": "always",
"bracketSpacing": true,
"indentWidth": 2,
"indentStyle": "space",
"semicolons": "always",
"lineWidth": 80,
"quoteStyle": "single",
"trailingCommas": "all"
}
},
"linter": {
"domains": {
"project": "all"
},
"rules": {
"complexity": {
"noAdjacentSpacesInRegex": "error",
"noArguments": "error",
"noBannedTypes": "error",
"noCommaOperator": "error",
"noEmptyTypeParameters": "error",
"noExcessiveCognitiveComplexity": "error",
"noExcessiveLinesPerFunction": "off",
"noExcessiveNestedTestSuites": "error",
"noExtraBooleanCast": "error",
"noFlatMapIdentity": "error",
"noForEach": "error",
"noImplicitCoercions": "off",
"noStaticOnlyClass": "error",
"noThisInStatic": "error",
"noUselessCatch": "error",
"noUselessConstructor": "error",
"noUselessContinue": "error",
"noUselessEmptyExport": "error",
"noUselessEscapeInRegex": "error",
"noUselessLabel": "error",
"noUselessLoneBlockStatements": "error",
"noUselessRename": "error",
"noUselessStringConcat": "error",
"noUselessStringRaw": "error",
"noUselessSwitchCase": "error",
"noUselessTernary": "error",
"noUselessThisAlias": "error",
"noUselessTypeConstraint": "error",
"noUselessUndefinedInitialization": "error",
"noVoid": "error",
"useArrowFunction": "error",
"useDateNow": "error",
"useFlatMap": "error",
"useIndexOf": "error",
"useLiteralKeys": "error",
"useNumericLiterals": "error",
"useOptionalChain": "error",
"useRegexLiterals": "error",
"useSimpleNumberKeys": "error",
"useSimplifiedLogicExpression": "error",
"useWhile": "error"
},
"correctness": {
"noConstAssign": "error",
"noConstantCondition": "error",
"noConstantMathMinMaxClamp": "error",
"noConstructorReturn": "error",
"noEmptyCharacterClassInRegex": "error",
"noEmptyPattern": "error",
"noGlobalDirnameFilename": "error",
"noGlobalObjectCalls": "error",
"noInnerDeclarations": "error",
"noInvalidBuiltinInstantiation": "error",
"noInvalidConstructorSuper": "error",
"noInvalidUseBeforeDeclaration": "error",
"noNonoctalDecimalEscape": "error",
"noPrecisionLoss": "error",
"noSelfAssign": "error",
"noSetterReturn": "error",
"noStringCaseMismatch": "error",
"noSwitchDeclarations": "error",
"noUndeclaredDependencies": "error",
"noUndeclaredVariables": "error",
"noUnreachable": "error",
"noUnreachableSuper": "error",
"noUnsafeFinally": "error",
"noUnsafeOptionalChaining": "error",
"noUnusedFunctionParameters": "error",
"noUnusedImports": "error",
"noUnusedLabels": "error",
"noUnusedPrivateClassMembers": "error",
"noUnusedVariables": "error",
"useGraphqlNamedOperations": "error",
"useImportExtensions": "error",
"useJsonImportAttributes": "error",
"useParseIntRadix": "error",
"useSingleJsDocAsterisk": "error",
"useValidForDirection": "error",
"useValidTypeof": "error",
"useYield": "error"
},
"nursery": {
"noFloatingPromises": "error",
"noImportCycles": "error",
"noMisusedPromises": "error",
"noNonNullAssertedOptionalChain": "error",
"noShadow": "error",
"noUnnecessaryConditions": "error",
"noUselessUndefined": "error",
"useAnchorHref": "error",
"useConsistentTypeDefinitions": {
"level": "error",
"options": { "style": "interface" }
},
"useExhaustiveSwitchCases": "error",
"useExplicitType": "off",
"useMaxParams": {
"level": "error",
"options": { "max": 4 }
}
},
"performance": {
"noAccumulatingSpread": "error",
"noAwaitInLoops": "error",
"noBarrelFile": "error",
"noDelete": "error",
"noDynamicNamespaceImportAccess": "error",
"noNamespaceImport": "off",
"noReExportAll": "error",
"useTopLevelRegex": "info"
},
"security": {
"noGlobalEval": "error"
},
"style": {
"noCommonJs": "error",
"noDefaultExport": "error",
"noEnum": "error",
"noExportedImports": "error",
"noInferrableTypes": "error",
"noMagicNumbers": "off",
"noNamespace": "error",
"noNegationElse": "error",
"noNestedTernary": "error",
"noNonNullAssertion": "error",
"noParameterAssign": "error",
"noShoutyConstants": "error",
"noSubstr": "error",
"noUnusedTemplateLiteral": "error",
"noUselessElse": "error",
"useArrayLiterals": "error",
"useAsConstAssertion": "error",
"useAtIndex": "error",
"useBlockStatements": "error",
"useCollapsedElseIf": "error",
"useCollapsedIf": "error",
"useConst": "error",
"useConsistentArrayType": {
"level": "error",
"options": {
"syntax": "generic"
}
},
"useConsistentBuiltinInstantiation": "error",
"useConsistentMemberAccessibility": {
"level": "error",
"options": { "accessibility": "explicit" }
},
"useConsistentObjectDefinitions": {
"level": "error",
"options": {
"syntax": "shorthand"
}
},
"useDefaultParameterLast": "error",
"useDefaultSwitchClause": "error",
"useEnumInitializers": "error",
"useExplicitLengthCheck": "error",
"useExportType": "error",
"useExponentiationOperator": "error",
"useExportsLast": "off",
"useFilenamingConvention": "off",
"useForOf": "error",
"useGraphqlNamingConvention": "error",
"useGroupedAccessorPairs": "error",
"useImportType": "error",
"useLiteralEnumMembers": "error",
"useNamingConvention": {
"level": "error",
"options": {
"strictCase": false
}
},
"useNodejsImportProtocol": "error",
"useNumberNamespace": "error",
"useNumericSeparators": "error",
"useObjectSpread": "error",
"useSelfClosingElements": "error",
"useShorthandAssign": "error",
"useShorthandFunctionType": "error",
"useSingleVarDeclarator": "error",
"useSymbolDescription": "error",
"useTemplate": "error",
"useThrowNewError": "error",
"useThrowOnlyError": "error",
"useTrimStartEnd": "error",
"useUnifiedTypeSignatures": "error"
},
"suspicious": {
"noAlert": "error",
"noApproximativeNumericConstant": "error",
"noAssignInExpressions": "error",
"noAsyncPromiseExecutor": "error",
"noBitwiseOperators": "error",
"noCatchAssign": "error",
"noClassAssign": "error",
"noCompareNegZero": "error",
"noConfusingLabels": "error",
"noConfusingVoidType": "error",
"noConsole": "error",
"noConstEnum": "error",
"noConstantBinaryExpressions": "error",
"noControlCharactersInRegex": "error",
"noDebugger": "error",
"noDocumentCookie": "error",
"noDoubleEquals": "error",
"noDuplicateCase": "error",
"noDuplicateClassMembers": "error",
"noDuplicateElseIf": "error",
"noDuplicateObjectKeys": "error",
"noDuplicateParameters": "error",
"noDuplicateTestHooks": "error",
"noEvolvingTypes": "error",
"noExplicitAny": "error",
"noExportsInTest": "error",
"noFocusedTests": "error",
"noFunctionAssign": "error",
"noGlobalAssign": "error",
"noGlobalIsNan": "error",
"noMisleadingInstantiator": "error",
"noMisplacedAssertion": "error",
"noPrototypeBuiltins": "error",
"noRedundantUseStrict": "error",
"noRedeclare": "error",
"noSkippedTests": "error",
"noShadowRestrictedNames": "error",
"noTemplateCurlyInString": "error",
"noThenProperty": "error",
"noTsIgnore": "error",
"noUnassignedVariables": "error",
"noUnsafeDeclarationMerging": "error",
"noUnsafeNegation": "error",
"noUselessEscapeInString": "error",
"noUselessRegexBackrefs": "error",
"noVar": "error",
"useAdjacentOverloadSignatures": "error",
"useAwait": "error",
"useBiomeIgnoreFolder": "error",
"useErrorMessage": "error",
"useGetterReturn": "error",
"useGoogleFontDisplay": "error",
"useGuardForIn": "off",
"useIsArray": "error",
"useIterableCallbackReturn": "error",
"useNamespaceKeyword": "off",
"useNumberToFixedDigitsArgument": "error",
"useStaticResponseMethods": "error",
"useStrictMode": "off"
}
}
},
"overrides": [
{
"includes": ["**/{vite,vitest}.config.ts", "**/.vitepress/config.ts"],
"linter": {
"rules": {
"style": {
"noDefaultExport": "off"
}
}
}
},
{
"includes": ["**/*.spec.{ts,tsx}"],
"linter": {
"rules": {
"style": {
"useNamingConvention": {
"level": "error",
"options": {
"strictCase": false,
"conventions": [
{
"selector": {
"kind": "objectLiteralProperty"
},
"formats": ["PascalCase", "camelCase"]
},
{
"selector": {
"kind": "typeProperty"
},
"formats": ["PascalCase", "camelCase"]
}
]
}
}
}
}
}
}
]
}