UltraciteUltracite
Dashboard

Upgrade to v7

Guide for upgrading from Ultracite v6 to v7 with multi-linter support.

Ultracite v7 introduces support for multiple linting providers: Biome, ESLint + Prettier + Stylelint, and Oxlint + Oxfmt.

What Changed

Multi-Provider Support

Ultracite now supports three linting toolchains:

Updated Preset Paths

Preset paths now include the provider name to distinguish between linters:

v6 Pathv7 Path
ultracite/coreultracite/biome/core
ultracite/reactultracite/biome/react
ultracite/nextultracite/biome/next
ultracite/solidultracite/biome/solid
ultracite/vueultracite/biome/vue
ultracite/svelteultracite/biome/svelte
ultracite/qwikultracite/biome/qwik
ultracite/angularultracite/biome/angular
ultracite/remixultracite/biome/remix
ultracite/astroultracite/biome/astro

New CLI Flag

The --linter flag allows you to specify which provider to use:

npx ultracite init --linter biome
npx ultracite init --linter eslint
npx ultracite init --linter oxlint

Migration

For Biome Users (Default)

Update your biome.jsonc to use the new preset paths:

biome.jsonc
{
  // Before (v6)
  "extends": ["ultracite/core", "ultracite/react", "ultracite/next"]

  // After (v7)
  "extends": ["ultracite/biome/core", "ultracite/biome/react", "ultracite/biome/next"]
}

Switching to ESLint

If you'd like to switch to ESLint + Prettier + Stylelint:

npx ultracite init --linter eslint

This will create eslint.config.mjs, prettier.config.mjs, and stylelint.config.mjs files:

eslint.config.mjs
import { defineConfig } from "eslint/config";
import core from "ultracite/eslint/core";
import react from "ultracite/eslint/react";
import next from "ultracite/eslint/next";

export default defineConfig([
  {
    extends: [core, react, next],
  },
]);

Switching to Oxlint

If you'd like to switch to the fastest option:

npx ultracite init --linter oxlint

This will create .oxlintrc.json and .oxfmtrc.jsonc files:

.oxlintrc.json
{
  "extends": [
    "./node_modules/ultracite/config/oxlint/core/.oxlintrc.json",
    "./node_modules/ultracite/config/oxlint/react/.oxlintrc.json",
    "./node_modules/ultracite/config/oxlint/next/.oxlintrc.json"
  ]
}

Quick Upgrade

For the fastest upgrade path, run:

npx ultracite init

When prompted, select your preferred linting provider. Ultracite will update your configuration files automatically.

How is this guide?

On this page