Skip to content

feat(design): replace @internal/design with @antfu/design#53

Merged
antfu merged 1 commit into
mainfrom
great-items-create
Jul 1, 2026
Merged

feat(design): replace @internal/design with @antfu/design#53
antfu merged 1 commit into
mainfrom
great-items-create

Conversation

@antfubot

Copy link
Copy Markdown
Collaborator

What

Adopts @antfu/design (v0.2.1) as the single design system for every built-in plugin and example, replacing the internal source-only @internal/design package.

  • One preset, wired per app. Each consumer's uno.config.ts composes presetAnthonyDesign({ primary }) (devframe's sage green) over Wind4, with Phosphor icons, DM Sans/Mono, the directive/variant-group transformers, and the named z-* layers the preset requires. A small preflight restores the subtle shared border color Wind4 otherwise leaves at currentColor.
  • Vue uses the components directly; other frameworks port them. The Vue surface (inspect) imports @antfu/design/components/* directly (LayoutToolbar, LayoutTabs, ActionButton, ActionIconButton). git (React), terminals (Svelte), a11y (Solid), code-server (vanilla) and the Preact/Next/vanilla examples render the same @antfu/design vocabulary through faithful, co-located design.ts ports.
  • Removes @internal/design (its df-* class vocabulary, --df-* token set, preset and safelist), pruning alias.ts + the generated tsconfig.base.json paths.
  • Storybook previews for git/inspect/code-server are realigned to the @antfu/design styles + theme toggle; inspect's vue3-vite storybook is the Vue reference the other ports match.
  • e2e selectors are decoupled from the removed df-* classes (text/structure-based).

Why

Make the design consistent with the broader antfu devtools ecosystem and simplify the codebase by leaning on one maintained system instead of a parallel internal one. Intentional, minor visual changes come with the adoption.

Verification

pnpm lint, pnpm typecheck, pnpm build (13/13 packages) and pnpm test (532 tests) all pass.

Notes

  • @internal/design was private/unpublished, so no published plugin's public API changes — only the bundled client UI and a build-time devDependency swap.
  • A standalone design-system storybook was intentionally not added: with no shared design package left to document and @antfu/design shipping its own storybook upstream, the realigned plugin storybooks (with inspect as the Vue reference) cover it without duplication. Happy to add a dedicated one if preferred.

This PR was created with the help of an agent.

Adopt @antfu/design as the one design system across every built-in plugin and
example, so they look and feel like one product. Each app wires the
@antfu/design UnoCSS preset directly (devframe's sage-green primary over Wind4,
Phosphor icons, DM Sans/Mono, named z-layers). The Vue surface (inspect) imports
@antfu/design components directly; the React, Svelte, Solid, Preact and vanilla
surfaces render the same @antfu/design vocabulary through faithful, co-located
framework ports.

Remove the internal, source-only @internal/design package along with its df-*
class vocabulary and --df-* token set, and update the plugin storybooks and the
e2e selectors to match. Intentional, minor visual changes come with adopting the
shared system.
@netlify

netlify Bot commented Jun 30, 2026

Copy link
Copy Markdown

Deploy Preview for devfra ready!

Name Link
🔨 Latest commit f07f367
🔍 Latest deploy log https://app.netlify.com/projects/devfra/deploys/6a4377da9ab3050008a894b9
😎 Deploy Preview https://deploy-preview-53--devfra.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

@antfu antfu merged commit 4ddfe06 into main Jul 1, 2026
12 checks passed
@antfu antfu deleted the great-items-create branch July 1, 2026 04:17
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