chore: switch code formatter from Prettier to Biome (#4223)

Replace Prettier with Biome for formatting JS/TS/JSX/CSS/JSON. The CI
format check drops from ~23s to ~0.4s.

- Unify config into a single root biome.json (formatter + linter); the
  former apps/readest-app/biome.json was linter-only
- Mirror the old .prettierrc.json style: 100 line width, 2-space indent,
  LF, single quotes, trailing commas
- Enable the CSS tailwindDirectives parser for @apply in globals.css
- Convert // prettier-ignore comments to // biome-ignore format:
- Root scripts and lint-staged now run biome; apps/readest-app lint runs
  `biome lint` (lint-only) so formatting stays a separate CI step
- Drop prettier + prettier-plugin-tailwindcss dependencies

Markdown/YAML are no longer format-checked (Biome does not format them)
and Tailwind class sorting is no longer enforced.

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Huang Xin
2026-05-19 14:13:36 +08:00
committed by GitHub
parent 05da6bdf43
commit fe41c42ec5
19 changed files with 199 additions and 243 deletions
+4 -6
View File
@@ -12,8 +12,8 @@
"prepare": "husky",
"fmt:check": "pnpm --filter @readest/readest-app fmt:check",
"clippy:check": "pnpm --filter @readest/readest-app clippy:check",
"format": "prettier --write \"**/*.{js,jsx,ts,tsx,css,json,md,html,yml}\"",
"format:check": "prettier --check \"**/*.{js,jsx,ts,tsx,css,json,md,html,yml}\""
"format": "biome format --write .",
"format:check": "biome format ."
},
"packageManager": "pnpm@11.1.1",
"devDependencies": {
@@ -21,13 +21,11 @@
"@sindresorhus/tsconfig": "^6.0.0",
"husky": "^9.1.6",
"lint-staged": "^16.2.7",
"prettier": "^3.3.3",
"prettier-plugin-tailwindcss": "^0.6.8",
"typescript": "^5"
},
"lint-staged": {
"**/*.{js,jsx,ts,tsx,css,json,md,html,yml}": [
"prettier --write"
"**/*.{js,jsx,ts,tsx,css,json}": [
"biome format --write --no-errors-on-unmatched"
]
}
}