Ultracite 是什么?

Ultracite 是一个高度固定化、零配置的代码检查和格式化工具。它基于高性能的 Biome 构建,适用于所有前端项目,无论你使用 React、Vue、Angular 还是原生 JavaScript,都能让你和 AI 编程助手编写出一致且高质量的代码。

核心理念:约定优于配置

不同于 ESLint + Prettier 需要大量配置,Ultracite 采用了极简主义设计理念:

快速开始

初始化

# 在项目中初始化 Ultracite
pnpm dlx ultracite init

Ultracite 提供了交互式的安装体验,让你根据项目需求选择功能:

❯ pnpm dlx ultracite init
┌
888     888 888    88888888888 8888888b.         d8888  .d8888b. 8888888 88888888888 8888888888
888     888 888        888     888   Y88b       d88888 d88P  Y88b  888       888     888
888     888 888        888     888    888      d88P888 888    888  888       888     888
888     888 888        888     888   d88P     d88P 888 888         888       888     8888888
888     888 888        888     8888888P"     d88P  888 888         888       888     888
888     888 888        888     888 T88b     d88P   888 888    888  888       888     888
Y88b. .d88P 888        888     888  T88b   d8888888888 Y88b  d88P  888       888     888
 "Y88888P"  88888888   888     888   T88b d88P     888  "Y8888P" 8888888     888     8888888888

│
●  Detected lockfile, using pnpm
│
◇  Remove existing formatters/linters (recommended for clean migration)?
│  Remove ESLint (dependencies, config files, VS Code settings)
│
◇  Which frameworks are you using (optional)?
│  React
│
◇  Which editors do you want to configure (recommended)?
│  VSCode / Cursor / Windsurf
│
◇  Which agents do you want to enable (optional)?
│  Cursor
│
◇  Which agent hooks do you want to enable (optional)?
│  Cursor
│
◇  Would you like any of the following (optional)?
│  Husky pre-commit hook, Lefthook pre-commit hook, Lint-staged
│
◑  ...省略安装步骤
◆  Successfully initialized Ultracite configuration!

初始化完成后,Ultracite 会根据你的选择自动完成以下配置:

关于 Git Hooks 工具的详细介绍,可以参考我之前的文章:在 Monorepo 中对代码进行规范(husky + lint-staged)