Luigit
repositories / pi-ext

pi-ext

bugabingas pi extensions

owned by admin

biome.jsonc

Raw
{
	// I use the latest schema for editor hints; the installed Biome CLI validates this config.
	// If editor hints get ahead of mise.lock, bump the locked Biome version.
	"$schema": "https://biomejs.dev/schemas/latest/schema.json",
	"files": {
		"includes": [
			"**/*.ts",
			"**/*.js",
			"**/*.mjs",
			"**/*.json",
			"**/*.jsonc",
			"**/*.css",
			"**/*.html",
			"!**/node_modules",
			"!dist",
			"!.research",
			"!.safe-clones",
			"!.rumdl_cache",
			"!.worktrees",
			"!!**/.pi/tmp",
			"!!**/.pi/release",
			"!!**/.home",
			"!!**/.test-home",
			"!skills/find-skills",
			"!check/fixtures",
			"!**/test-results",
			"!**/playwright-report",
			"!**/*.snap"
		]
	},
	"formatter": {
		"enabled": true,
		"indentStyle": "tab"
	},
	"linter": {
		"enabled": true,
		"rules": {
			"preset": "recommended",
			"a11y": {
				"useAriaPropsForRole": "off",
				"useButtonType": "off"
			},
			"complexity": {
				"noBannedTypes": "off",
				"noImportantStyles": "off",
				"noUselessStringRaw": "off",
				"noUselessTernary": "error",
				"useLiteralKeys": "off"
			},
			"correctness": {
				"noUnusedFunctionParameters": "error",
				"noUnusedImports": "error",
				"noUnusedVariables": "error",
				"noVoidTypeReturn": "error",
				"useParseIntRadix": "error"
			},
			"performance": {
				"noAccumulatingSpread": "error"
			},
			"style": {
				"noDescendingSpecificity": "off",
				"noNonNullAssertion": "error",
				"useNodejsImportProtocol": "error",
				"useTemplate": "off"
			},
			"suspicious": {
				"noAssignInExpressions": "error",
				"noControlCharactersInRegex": "off",
				"noExplicitAny": "off",
				"noGlobalIsNan": "error",
				"noImplicitAnyLet": "error",
				"noTemplateCurlyInString": "off",
				"useIterableCallbackReturn": "off"
			}
		}
	},
	"overrides": [
		{
			// I keep console out of Pi runtime code, not standalone tests, benchmarks, scripts, or workers.
			"includes": [
				"extensions/**/*.ts",
				"extensions/**/*.js",
				"extensions/**/*.mjs",
				"!extensions/**/__tests__/**",
				"!extensions/**/__e2e__/**",
				"!extensions/**/__bench__/**",
				"!extensions/**/__benches__/**",
				"!extensions/**/scripts/**",
				"!extensions/ultra/dynamic-validator-worker.ts"
			],
			"linter": {
				"rules": {
					"suspicious": {
						"noConsole": "error"
					}
				}
			}
		}
	]
}