Search documentation

Search components and pages

Changelog

Notable changes to the Swiss UI registry and documentation.

2026-07-29

0.3.0 — Base UI

  • ChangedReplaced Radix UI with Base UI (@base-ui/react) across all 32 primitive-backed components. The registry now ships shadcn new-york structure on Base UI primitives while keeping the Swiss visual language unchanged.
  • ChangedRegistry npm dependencies consolidated to @base-ui/react instead of individual @radix-ui/react-* packages.
  • ChangedComposition API: overlay triggers, Button, Badge, BreadcrumbLink, Item, and sidebar menu buttons use Base UI render props (with nativeButton={false} for non-button targets) instead of Radix asChild.
  • ChangedDrawer migrated from vaul to @base-ui/react/drawer. State styling follows Base UI data-open / data-closed conventions.
  • Addedregistry:base item pins the swiss style to Base UI; components.json base field set to "base".
  • RemovedRadix Slot/asChild patterns, @radix-ui/* direct dependencies, and vaul from the drawer stack.
2026-07-23

Structural Grid consistency

  • ChangedEnforced Zero Radius in component source with rounded-none across the registry, including switch, radio, avatar, slider, progress, scroll area, carousel controls, badge, and checkbox (no circular chrome exceptions).
  • ChangedRemoved soft elevation language: backdrop blur on dialog/sheet/drawer/alert-dialog overlays, and shadow treatments on sidebar, navigation menu, and chart tooltip — separation uses hairline borders and rings instead.
  • ChangedUnified overlay chrome: Sheet and Drawer now match Dialog density (p-4 content, gap-2 headers, flush muted footers, close at top-2 right-2). Popover and Hover Card snap to p-2.
  • ChangedAligned spacing rhythm: marketing Hero/CTA use py-24; gap-px cells use p-6 sm:p-8; page gaps stick to the 4/8/16/24/32 ladder; Item default vs sm sizes diverge again.
  • ChangedReplaced the code-example fade gradient with a flat muted overlay.
  • AddedPRODUCT.md and DESIGN.md (Creative North Star: The Structural Grid) documenting product truth and the incumbent visual system for future work.
2026-06-22

Label typography and CJK docs

  • AddedThe .label utility (0.75rem / 12px) for compact metadata typography, driven by --label-* CSS variables that switch to sans-serif, normal case, and normal tracking under :lang(ja|ko|zh-*).
  • ChangedLabel styles centralized across UI components (Label, Button, Badge, Tabs, table headers, menu labels, and others) via the .label utility instead of inline uppercase tracking classes.
  • AddedNoto Sans JP, KR, SC, and TC registry font items. The swiss style now depends on them so CJK text renders with consistent webfonts instead of OS fallbacks.
  • AddedDedicated /cjk documentation with side-by-side Latin/CJK examples, locale font mapping, and a live component gallery for Korean, Japanese, and Simplified Chinese.
  • ChangedTypography utility-class docs moved from /components/typography to /typography. The page is listed in the Get Started sidebar before CJK and removed from the components index and sidebar.
  • AddedPermanent redirect from /components/typography to /typography.
2026-06-22

0.2.0 — Radix UI

  • ChangedReplaced Base UI with Radix UI across all 32 primitive-backed components. The registry now ships shadcn new-york structure on Radix primitives while keeping the Swiss visual language unchanged.
  • ChangedRegistry npm dependencies switched from @base-ui/react to individual @radix-ui/react-* packages (accordion, dialog, dropdown-menu, slot, and others).
  • ChangedComposition API: render props removed in favor of Radix asChild on Button, Badge, BreadcrumbLink, Item, sidebar menu buttons, and overlay triggers.
  • ChangedState styling selectors updated to Radix conventions — for example data-open to data-[state=open], data-active to data-[state=active], and orientation attributes to data-[orientation=horizontal].
  • RemovedBase UI-only utilities (@base-ui/react/merge-props, useRender) and the nativeButton prop on Button.
  • ChangedTooltipProvider now uses delayDuration instead of delay. Accordion and ToggleGroup require an explicit type prop per Radix.
  • ChangedUpdated README, landing copy, and registry build output for the new stack.
2026-06-15

0.1.0 — Registry alignment and docs

  • AddedSize variants on Input and Textarea (sm and default), using data-size selectors consistent with Select and Native Select.
  • ChangedButton now emits data-variant and data-size attributes to match the official shadcn styling contract.
  • FixedInput Group Button sm size now applies real height and padding styles instead of falling through as a no-op.
  • ChangedRestyled the default Tabs variant as a hairline segmented control with a solid inverted active tab (no floating shadow), and matched both variants to the same height.
  • AddedNew Panel and Section Header layout components, ported from the Swiss design language and now used across the docs pages.
  • AddedA swiss registry:style item that ships the design tokens, utilities, and keyframes, plus the Geist and Geist Mono fonts, so installing the theme styles every component.
  • AddedDedicated Installation and Theming pages, and this Changelog.
  • ChangedRegistry dependencies now resolve to our own items instead of stock shadcn, and the use-mobile hook, utils lib, and missing vaul dependency are shipped so components install correctly anywhere.
  • AddedReal descriptions, categories, and author metadata on every registry item.
  • RemovedDropped the registry:block layer and the /blocks route. Blocks existed only for dogfooding and are no longer published as installable items.
  • AddedPromoted the reusable blocks into components: Copy Button, Code Block, Theme Toggle, Stat, Stat Card, and Page Header.
  • ChangedDecomposed Page Header into composable parts (PageHeaderHeading, PageHeaderContent, PageHeaderTitle, ...) and removed its built-in breadcrumb.
  • ChangedTypography is now a style-only page of utility-class examples, and a new style-only Form page shows how to compose forms from primitives.
  • AddedEvery example now has a collapsible source block revealed with a View Code button.
  • ChangedFlattened component categories into a single alphabetical list and removed the redundant empty-state block.
  • ChangedSimplified the header to Docs and Components, with the remaining doc pages in the sidebar and footer; updated the footer columns and copyright.
  • AddedNamespace setup instructions so you can register @swiss once and install items by short address like @swiss/button.
  • RemovedThe redundant Manual tab from install commands, leaving a single CLI command.
2026-06-12

0.1.0 — Initial release

  • AddedSwiss UI shadcn registry and documentation site, with every primitive restyled in the International Typographic Style.
  • AddedDeferred primitives including calendar, date picker, chart, data table, carousel, resizable, and sidebar.
  • AddedDocumentation search in the header, opened with Cmd+K.
  • AddedPersistent docs sidebar that keeps its scroll position across navigation.
  • AddedExpanded Radio Group documentation with additional examples.
  • FixedSlider preview collapsing to zero width on the components grid.