Skip to content

Switch scaffold-nextjs to Ultracite oxlint/shadcn - #30

Merged
mblode merged 1 commit into
mainfrom
cursor/ultracite-oxlint-shadcn-b83d
Sep 16, 2026
Merged

mblode merged 1 commit into
mainfrom
cursor/ultracite-oxlint-shadcn-b83d

Conversation

@mblode

@mblode mblode commented Sep 16, 2026

Copy link
Copy Markdown
Owner

Follow-up to #29. New Next.js turborepos enable Ultracite 7.12's built-in ultracite/oxlint/shadcn preset instead of a hand-rolled @shadcn/lint starter policy.

Why

#29 skipped --js-plugins @shadcn/lint because that flag turns on all six design-system rules. Matt wants the Ultracite-native path now that 7.12 ships it:

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

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

Verified against a real ultracite@7.12.0 init with --frameworks next react --js-plugins @shadcn/lint.

Files changed

  • skills/scaffold-nextjs/SKILL.md: Phase 5 passes the init flag; Phase 5.1 confirms the preset; gotchas drop the lean-starter prohibition
  • skills/scaffold-nextjs/references/app-setup.md: Phase 5.1 rewritten around ultracite/oxlint/shadcn. The preset already turns no-restyle off inside **/components/ui/**
  • skills/scaffold-nextjs/references/turbo-configs.md: root AGENTS notes for the preset and ultracite fix --codex
  • skills/scaffold-nextjs/references/deploy-and-launch.md: validation for Ultracite ≥ 7.12 and the generated extends
  • skills/scaffold-nextjs/evals/evals.json: regression scenario for the native preset
  • README.md: scaffold-nextjs one-liner

Agent loop

Design-system errors come through Ultracite. npx ultracite fix applies mechanical autofixes; remaining findings go to npx ultracite fix --codex (or --claude) from apps/web.

Draft. Do not merge.

Open in Web Open in Cursor 

Use Ultracite 7.12's --js-plugins @shadcn/lint path instead of a
hand-rolled starter-only no-restyle snippet.

Co-authored-by: Matthew Blode <m@blode.co>
@mblode
mblode marked this pull request as ready for review September 16, 2026 05:24
@mblode
mblode merged commit 4214b27 into main Sep 16, 2026
1 check passed
@mblode
mblode deleted the cursor/ultracite-oxlint-shadcn-b83d branch September 16, 2026 05:24
@cursor

cursor Bot commented Sep 16, 2026

Copy link
Copy Markdown

Bugbot couldn't run - usage limit reached

Bugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit.

A user or team admin can review and increase usage limits in the Cursor dashboard.

(requestId: serverGenReqId_fd9efb64-76ce-4906-b59f-1fb7e42ca17a)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants