GitHub - haydenbleasel/ultracite: A highly opinionated, zero-configuration linter and formatter.

2 min read Original article ↗

A production-grade, zero-configuration preset for ESLint, Biome, and Oxlint.

Ultracite is designed to help you and your AI models write consistent and type-safe code without the hassle of configuration. Choose your preferred toolchain and get started in seconds.

Quick Start

The interactive setup will guide you through selecting your formatter/linter, framework, editor, and AI agents. It can also offer to install the reusable Ultracite skill, or you can pass --install-skill in non-interactive flows.

Oxlint TypeScript Configs

If you're using oxlint.config.ts, import the typed presets instead of the raw JSON files:

import { defineConfig } from "oxlint";

import { core, next, react } from "ultracite/oxlint";

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

Supported Tools

  • Biome — All-in-one formatting and linting
  • ESLint + Prettier + Stylelint — Most mature ecosystem with the largest plugin support
  • Oxlint + Oxfmt — 50-100x faster than ESLint, part of the Oxc ecosystem

Key Features

⚡ Subsecond Performance

Built on Rust-based tools for instant code analysis. On-save checks feel seamless without interrupting your workflow.

🎯 Zero-Config by Design

Hundreds of preconfigured rules optimized for JavaScript and TypeScript projects. Customize when needed, but it works perfectly out of the box.

🤖 AI-Ready

Generate rules for 20+ AI agents including Claude Code, GitHub Copilot, Cursor, Gemini, and more. Ensures consistent code style across all team members and AI models.

🏗️ Monorepo Ready

Unified toolchain configuration across all packages and apps, eliminating duplicate config files while maintaining consistency.


Read the docs for detailed setup instructions, configuration options, and examples.