Skip to main content
Ultracite can be installed with all major package managers. You’ll need Node.js 20+ and a project with a package.json file.

Installation

The easiest way to get started is to run Ultracite’s init script, which will install the necessary packages and set up the config files for you. In your project directory, run:
npx ultracite init
You can optionally pass the following flags to the init command:
FlagDescriptionOptions
--linterThe linting toolchain to use.biome, eslint, oxlint
--pmThe package manager to use.pnpm, bun, yarn, npm
--frameworksThe frameworks to configure.Space-separated: react, next, solid, vue, svelte, qwik, remix, angular, astro, nestjs
--editorsThe editors to configure.Space-separated: vscode, cursor, windsurf, antigravity, kiro, trae, void, zed
--agentsThe AI agents to configure.Space-separated: claude, codex, jules, copilot, cline, amp, aider, firebase-studio, open-hands, gemini, junie, augmentcode, kilo-code, goose, roo-code, warp, droid, opencode, crush, qwen, amazon-q-cli, firebender, cursor-cli, mistral-vibe, vercel
--hooksThe agent hooks to configure.Space-separated: cursor, windsurf, claude
--integrationsAdditional integrations to setup.Space-separated: husky, lefthook, lint-staged, pre-commit
--type-awareEnable type-aware linting (oxlint only).(no value needed)
--skip-installSkip installing dependencies.(no value needed)
--quietSuppress interactive prompts and visual output.(no value needed, automatically enabled in CI)

Programmatic Usage

For tools that need to call Ultracite programmatically (like scaffolding CLIs), you can use the --quiet flag to suppress all interactive prompts and visual output:
Terminal
npx ultracite init --quiet --pm npm
The --quiet flag is automatically enabled when the CI environment variable is set to true or 1, making it suitable for CI/CD pipelines:
Terminal
CI=true npx ultracite init --pm npm
In quiet mode, Ultracite will:
  • Skip all interactive prompts
  • Use sensible defaults for all options (Biome by default)
  • Suppress ASCII art, spinners, and log messages
  • Only create the core linter configuration
  • Exit cleanly with code 0 on success or 1 on failure
You can combine --quiet with --linter to specify a toolchain:
Terminal
npx ultracite init --quiet --linter eslint --pm npm

Usage with Tailwind CSS

If you use Tailwind CSS, it’s recommended to install the Tailwind CSS IntelliSense extension for class sorting and hints:
Terminal
code --install-extension bradlc.vscode-tailwindcss