shadcn
18fcf0f766
feat: @shadcn/react ( #11022 )
...
* feat(@shadcn/react): add message-scroller package
Add the @shadcn/react headless primitives package with MessageScroller
scroll anchoring, streaming follow, history prepend, and jump-to-message
behavior. Includes geometry helpers, use-render utility, and unit,
browser, and perf tests.
* feat(registry): add chat components
Add MessageScroller, Message, Bubble, Attachment, and Marker registry
sources for base and radix, style variants, preview-03 chat blocks,
and registry index wiring.
* feat(v4): integrate chat components into docs site
Wire chat components into the v4 app with docs routes, example preview
pages, message part renderers, markdown support, registry build updates,
and supporting lib utilities.
* feat(examples): add chat component demos
Add base and radix example demos for MessageScroller, Message, Bubble,
Attachment, Marker, scroll-fade, and shimmer.
* docs: add chat component documentation
Add component and utility docs for the chat component set, update docs
navigation, and add the June 2026 chat components changelog entry.
* chore: regenerate registry JSON output
Rebuild public registry artifacts for all style variants with the new
chat components.
* chore(release): add @shadcn/react publish and CI pipeline
Add Changesets prerelease workflow, browser test job, RELEASING docs,
and monorepo wiring for publishing @shadcn/react independently from
the shadcn CLI.
* docs: fix display of component preview on mobile
* fix
* fix
* docs: add message scroller docs
* style: format
* fix
2026-06-26 21:19:31 +04:00
shadcn
a1fb619cef
feat(card): add spacing and edge-to-edge variants ( #10872 )
2026-06-05 19:32:28 +04:00
Fabian Hiller
7e4dac7f31
feat: add Formisch (form library) examples to docs ( #10342 )
...
* feat: add Formisch (form library) examples to docs
* docs: update Formisch docs with additional form methods and examples
* chore: update valibot dependency to version 1.4.0
* style(docs): format formisch imports
---------
Co-authored-by: shadcn <m@shadcn.com >
2026-05-20 15:18:41 +04:00
shadcn
c9930b7fda
fix(toggle-group): update default spacing ( #10681 )
2026-05-17 12:52:42 +04:00
shadcn
eb6e783fb3
feat: add --pointer option ( #10488 )
2026-04-25 14:24:25 +04:00
shadcn
7dc65da6b2
fix
2026-04-07 15:28:19 +04:00
shadcn
f00a94d9e5
docs: add composition section
2026-04-07 15:23:27 +04:00
shadcn
14bc966fee
feat: recharts docs ( #10146 )
...
* feat: recharts docs
* docs: update
2026-03-23 15:26:55 +04:00
shadcn
c5b4080649
fix(v4): restore active chart demos
2026-03-23 13:14:10 +04:00
shadcn
228b0e3ecd
feat(v4): support Recharts v3
2026-03-23 12:16:35 +04:00
shadcn
74c4c7508b
docs: review all docs ( #10058 )
...
* docs: review all docs
* fix
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
* docs(spinner): reintroduce data-icon attribute guidance in radix spinner docs (#10059 )
* Initial plan
* docs: add data-icon attribute instructions to radix/spinner.mdx button and badge sections
Co-authored-by: shadcn <124599+shadcn@users.noreply.github.com >
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: shadcn <124599+shadcn@users.noreply.github.com >
---------
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com >
2026-03-16 13:29:23 +04:00
shadcn
3d8837bddb
Merge branch 'main' into shadcn/v4
...
# Conflicts:
# apps/v4/app/(create)/components/customizer.tsx
# apps/v4/app/(create)/components/item-picker.tsx
# apps/v4/app/(create)/components/lock-button.tsx
# apps/v4/app/(create)/components/picker.tsx
# apps/v4/app/(create)/components/preview-controls.tsx
# apps/v4/app/(create)/components/preview.tsx
# apps/v4/app/(create)/components/random-button.tsx
# apps/v4/app/(create)/components/reset-button.tsx
# apps/v4/app/(create)/components/toolbar-controls.tsx
# apps/v4/app/(create)/create/page.tsx
# apps/v4/components/docs-sidebar.tsx
# apps/v4/components/site-header.tsx
# apps/v4/examples/base/ui-rtl/tooltip.tsx
# apps/v4/examples/base/ui/tooltip.tsx
# apps/v4/examples/radix/ui-rtl/tooltip.tsx
# apps/v4/examples/radix/ui/tooltip.tsx
# apps/v4/package.json
# apps/v4/public/r/styles/base-lyra/chatgpt.json
# apps/v4/public/r/styles/base-lyra/elevenlabs.json
# apps/v4/public/r/styles/base-lyra/github.json
# apps/v4/public/r/styles/base-lyra/input-group.json
# apps/v4/public/r/styles/base-lyra/preview.json
# apps/v4/public/r/styles/base-lyra/tooltip-example.json
# apps/v4/public/r/styles/base-lyra/tooltip.json
# apps/v4/public/r/styles/base-lyra/vercel.json
# apps/v4/public/r/styles/base-maia/chatgpt.json
# apps/v4/public/r/styles/base-maia/elevenlabs.json
# apps/v4/public/r/styles/base-maia/github.json
# apps/v4/public/r/styles/base-maia/preview.json
# apps/v4/public/r/styles/base-maia/tooltip-example.json
# apps/v4/public/r/styles/base-maia/tooltip.json
# apps/v4/public/r/styles/base-maia/vercel.json
# apps/v4/public/r/styles/base-mira/chatgpt.json
# apps/v4/public/r/styles/base-mira/elevenlabs.json
# apps/v4/public/r/styles/base-mira/github.json
# apps/v4/public/r/styles/base-mira/input-group.json
# apps/v4/public/r/styles/base-mira/preview.json
# apps/v4/public/r/styles/base-mira/tooltip-example.json
# apps/v4/public/r/styles/base-mira/tooltip.json
# apps/v4/public/r/styles/base-mira/vercel.json
# apps/v4/public/r/styles/base-nova/chatgpt.json
# apps/v4/public/r/styles/base-nova/elevenlabs.json
# apps/v4/public/r/styles/base-nova/github.json
# apps/v4/public/r/styles/base-nova/preview.json
# apps/v4/public/r/styles/base-nova/tooltip-example.json
# apps/v4/public/r/styles/base-nova/tooltip.json
# apps/v4/public/r/styles/base-nova/vercel.json
# apps/v4/public/r/styles/base-vega/chatgpt.json
# apps/v4/public/r/styles/base-vega/elevenlabs.json
# apps/v4/public/r/styles/base-vega/github.json
# apps/v4/public/r/styles/base-vega/preview.json
# apps/v4/public/r/styles/base-vega/tooltip-example.json
# apps/v4/public/r/styles/base-vega/tooltip.json
# apps/v4/public/r/styles/base-vega/vercel.json
# apps/v4/public/r/styles/radix-lyra/chatgpt.json
# apps/v4/public/r/styles/radix-lyra/elevenlabs.json
# apps/v4/public/r/styles/radix-lyra/github.json
# apps/v4/public/r/styles/radix-lyra/input-group.json
# apps/v4/public/r/styles/radix-lyra/preview.json
# apps/v4/public/r/styles/radix-lyra/tooltip-example.json
# apps/v4/public/r/styles/radix-lyra/tooltip.json
# apps/v4/public/r/styles/radix-lyra/vercel.json
# apps/v4/public/r/styles/radix-maia/chatgpt.json
# apps/v4/public/r/styles/radix-maia/elevenlabs.json
# apps/v4/public/r/styles/radix-maia/github.json
# apps/v4/public/r/styles/radix-maia/preview.json
# apps/v4/public/r/styles/radix-maia/tooltip-example.json
# apps/v4/public/r/styles/radix-maia/tooltip.json
# apps/v4/public/r/styles/radix-maia/vercel.json
# apps/v4/public/r/styles/radix-mira/chatgpt.json
# apps/v4/public/r/styles/radix-mira/elevenlabs.json
# apps/v4/public/r/styles/radix-mira/github.json
# apps/v4/public/r/styles/radix-mira/input-group.json
# apps/v4/public/r/styles/radix-mira/preview.json
# apps/v4/public/r/styles/radix-mira/tooltip-example.json
# apps/v4/public/r/styles/radix-mira/tooltip.json
# apps/v4/public/r/styles/radix-mira/vercel.json
# apps/v4/public/r/styles/radix-nova/chatgpt.json
# apps/v4/public/r/styles/radix-nova/elevenlabs.json
# apps/v4/public/r/styles/radix-nova/github.json
# apps/v4/public/r/styles/radix-nova/preview.json
# apps/v4/public/r/styles/radix-nova/tooltip-example.json
# apps/v4/public/r/styles/radix-nova/tooltip.json
# apps/v4/public/r/styles/radix-nova/vercel.json
# apps/v4/public/r/styles/radix-vega/chatgpt.json
# apps/v4/public/r/styles/radix-vega/elevenlabs.json
# apps/v4/public/r/styles/radix-vega/github.json
# apps/v4/public/r/styles/radix-vega/preview.json
# apps/v4/public/r/styles/radix-vega/tooltip-example.json
# apps/v4/public/r/styles/radix-vega/tooltip.json
# apps/v4/public/r/styles/radix-vega/vercel.json
# apps/v4/registry/bases/base/blocks/chatgpt.tsx
# apps/v4/registry/bases/base/blocks/elevenlabs.tsx
# apps/v4/registry/bases/base/blocks/github.tsx
# apps/v4/registry/bases/base/blocks/preview.tsx
# apps/v4/registry/bases/base/blocks/vercel.tsx
# apps/v4/registry/bases/radix/blocks/chatgpt.tsx
# apps/v4/registry/bases/radix/blocks/elevenlabs.tsx
# apps/v4/registry/bases/radix/blocks/github.tsx
# apps/v4/registry/bases/radix/blocks/preview.tsx
# apps/v4/registry/bases/radix/blocks/vercel.tsx
2026-03-02 14:00:50 +04:00
shadcn
9584703534
fix
2026-03-02 13:08:24 +04:00
shadcn
f31ed81983
style: run format on all components
2026-03-02 12:49:00 +04:00
shadcn
934afbcf15
docs: review and update docs
2026-03-02 10:14:31 +04:00
Shitanshu Kumar
1a67379f57
fix the missing items in select page (base ui)
2026-02-28 12:55:48 +05:30
David King Roderos
77f66d5357
Fix highlighted changes
...
On the sorting section, I've included the closing brackets of state of useReactTable() on the highlighted changes
2026-02-19 14:08:31 +08:00
shadcn
aaed0a186c
docs: update manual installation
2026-02-17 11:45:33 +04:00
shadcn
f9de81f032
Merge pull request #9587 from romeu-maleiane/fix/add-type-to-SidebarProvider-style-example
...
add React.CSSProperties type annotation to SidebarProvider style example
2026-02-16 23:34:04 +04:00
shadcn
3fc4482d7c
fix: remove link to calendar blocks
2026-02-16 23:24:33 +04:00
shadcn
867d341182
fix: document buttonVariants for base button
2026-02-16 22:38:37 +04:00
RhysJosmin
b0b711f181
Update Sonner API Reference link
...
fixes the same issue solved here
https://github.com/shadcn-ui/ui/pull/9440
but for radix
2026-02-09 17:10:15 +05:30
shadcn
f076420e68
fix
2026-02-09 13:19:40 +04:00
Romeu Maleiane
87d522f249
add React.CSSProperties type annotation to SidebarProvider style example
2026-02-09 00:21:17 +02:00
shadcn
4ddfd39b0d
Merge pull request #9440 from rahman-D3V/fix-sonner-doc-link
...
fix: correct Sonner documentation link
2026-02-06 12:50:31 +04:00
shadcn
630323ad47
feat: update TooltipProvider handling
2026-02-04 18:04:19 +04:00
shadcn
c3c7f03f04
fix: update props, migrate components and add changelog
2026-02-02 16:33:35 +04:00
Jaem
444f6889c8
Merge remote-tracking branch 'upstream/main' into fix/resizable-v4-upgrade
2026-02-02 01:16:10 +09:00
Chad Bell
acc847bed3
docs(select): add SelectGroup to usage examples ( #9508 )
2026-02-01 10:19:59 +04:00
shadcn
38de7fddc2
feat: rtl ( #9498 )
...
* feat: rtl
* feat
* fix
* fix
* fix
* fix
* fix
* fix
* fix
* fix
* fix
* fix
* fix
* feat: add sidebar
* fix
* fix
* fix
* fix
* fix
* fix
* fix
* fix
* fix
* fix
* fix
* fix
* fix
* chore: changeset
* fix
* fix
* fix
* fix
* fix
* fix
* fix
* fix
* fix
* fix
* fix
* fix
* fix
* fix
* fix
* fix
* fix
* fix
2026-01-30 21:08:39 +04:00
Jaem
759003c781
Merge branch 'main' into fix/resizable-v4-upgrade
2026-01-27 15:11:00 +09:00
Nicolas Vargas
1781186def
fix(docs): update navigation-menu docs package name and add styleName ( #9455 )
2026-01-27 09:48:54 +04:00
Jaem
d53f7489ce
Merge branch 'main' into fix/resizable-v4-upgrade
2026-01-27 03:19:30 +09:00
Jaem
dfe784b44a
fix(resizable): upgrade to react-resizable-panels v4
...
- Update component API: PanelGroup → Group, PanelResizeHandle → Separator
- Update prop: direction → orientation
- Update size values: number → string with units (e.g., "50%")
- Update CSS selectors: data-[panel-group-direction] → aria-[orientation]
- Update controlled component: onLayout → onLayoutChange with Layout type
Closes #9118 , #9136 , #9200
2026-01-27 03:10:54 +09:00
Usman Sabuwala
40b9de46e9
Fix Base UI dropdown menu links ( #9457 )
...
Base UI does not have a `dropdown-menu` but rather just `menu`
This PR fixes the link that lead to Base UI docs
2026-01-26 22:01:09 +04:00
rahman-D3V
3dbe9e6a3e
fix: correct Sonner documentation link
2026-01-24 18:32:59 +05:30
Aron Hafner
0ae734bdb2
docs: Update to correct url for vaul docs ( #9406 )
2026-01-22 09:58:42 +04:00
shadcn
5fc9ced0fd
fix
2026-01-20 21:53:52 +04:00
shadcn
47c47eaed2
feat: add docs for base-ui components ( #9304 )
...
* feat: add base and radix docs
* feat: transform code for display
* fix
* fix
* fix
* fix
* fix
* chore: remove claude files
* fix
* fix
* fix
* chore: run format:write
* fix
* feat: add more examples
* fix
* feat: add aspect-ratio
* feat: add avatar
* feat: add badge
* feat: add breadcrumb
* fix
* feat: add button
* fix
* fix
* fix
* feat: add calendar and card
* feat: add carousel
* fix: chart
* feat: add checkbox
* feat: add collapsible
* feat: add combobox
* feat: add command
* feat: add context menu
* feat: add data-table dialog and drawer
* feat: dropdown-menu
* feat: add date-picker
* feat: add empty
* feat: add field and hover-card
* fix: input
* feat: add input
* feat: add input-group
* feat: add input-otp
* feat: add item
* feat: add kbd and label
* feat: add menubar
* feat: add native-select
* feat: add more components
* feat: more components
* feat: more components
* feat: add skeleton, slider and sonner
* feat: add spinner and switch
* feat: add more components
* fix: tabs
* fix: tabs
* feat: add docs for sidebar
* fix
* fix
* fi
* docs: update
* fix: create page
* fix
* fix
* chore: add changelog
* fix
2026-01-20 19:31:38 +04:00
Aditya Mathur
dd1563d57d
fix: update author links in documentation for Drawer and Sonner components ( #8881 )
2025-11-27 13:38:26 +04:00
Sepehr Soheili
a2244d42f7
docs: fix typo in documentation ( #8793 )
2025-11-17 20:06:32 +04:00
Anvarys
8a7f05f670
fix: correct typos in docs/components/chart ( #8750 )
2025-11-10 11:34:53 +04:00
Dylan
14d6265580
docs: fix typos in Empty ( #8675 )
2025-11-03 08:57:19 +04:00
shadcn
d73ac361b3
feat: add registry directory ( #8574 )
...
* feat: add registry directory
* fix: lint
* feat: add more registries
* feat: add nuqs to directory
* feat: add shadcndesign
* feat: add more registries
* feat: add new registries
* chore: remove hooks
2025-10-28 11:25:25 +04:00
shadcn
efcf9728c2
feat: add docs for cell size
2025-10-26 14:53:50 +04:00
Lakshya Thakur
8835bacc8b
fix: use calendar-05 blocks instead of calendar-02 for range ( #8029 )
2025-10-26 14:47:06 +04:00
Ian Thorslund
f2556d2386
fix(components): Fix left radius of days when weeks are shown in range calendar ( #8570 )
...
* fix(components): Fix left radius of days when weeks are shown in range calendar
* feat: update block to show range
* chore: rebuild registry
* docs: add changelog
---------
Co-authored-by: shadcn <m@shadcn.com >
2025-10-26 14:44:24 +04:00
shadcn
5e2ef1f8bd
docs: updates
2025-10-24 10:56:23 +04:00
shadcn
9ac1b5c0a5
feat: add native select ( #8528 )
...
* feat: add native select
* fix: width
2025-10-21 11:48:25 +04:00
shadcn
54e725d986
feat(toggle-group): add spacing props
2025-10-20 21:28:40 +04:00