Migrate from Oxlint
How to migrate your project from standalone Oxlint to Ultracite.
If you're already using Oxlint and want to switch to Ultracite's preconfigured setup, this guide will help you migrate while preserving your code quality standards.
Why Migrate to Ultracite?
- Zero Configuration: Ultracite provides a highly configured preset of rules
- Editor Integration: Built-in support for AI-powered editors (Cursor, Windsurf, GitHub Copilot)
- Consistent Workflow: Standardized setup across projects and teams
- Additional Tooling: Optional Git hooks, lint-staged integration
- Maintained Rules: Regular updates with new best practices
Before You Start
Make sure you have:
- An existing project using Oxlint
- Node.js v14.18+ (Node 18+ recommended)
- An Oxlint configuration file (e.g.,
.oxlintrc.json)
Migration Options
Option 1: Quick Migration (Recommended)
The fastest way is to run the automatic setup script.
npx ultracite initWhen prompted, select Oxlint as your linting provider. This will:
- Install Ultracite as a dependency
- Merge your existing
.oxlintrc.jsonwith Ultracite's preset - Create an
.oxfmtrc.jsoncfor formatting configuration - Merge your existing
.vscode/settings.jsonwith Ultracite's preset - Enable
strictNullChecksin yourtsconfig.jsonfile (or create one if it doesn't exist) - Preserve your custom rules and settings
- Set up editor integrations
Following the upgrade, you may want to review your .oxlintrc.json file to remove any overrides that are now handled by Ultracite's preset.
Option 2: Manual Migration
If you prefer more control over the process, update your .oxlintrc.json to extend Ultracite:
{
"extends": ["./node_modules/ultracite/config/oxlint/core/.oxlintrc.json"]
}After the migration, restart your editor to ensure the new configuration is applied.
How is this guide?