Shadcn/UI Now Defaults To Base UI Instead Of Radix

TL;DR

Shadcn/UI has changed its default UI framework from Radix to Base UI. The update affects developers relying on the library’s default setup, signaling a shift in its design choices. The development is confirmed and now underway.

Shadcn/UI has officially changed its default UI framework from Radix to Base UI, a move confirmed by the project maintainers. This shift impacts developers who rely on the library’s default configuration, signaling a strategic change in the library’s design approach and dependencies.

The update was announced on the official Shadcn/UI repository and related developer channels. Previously, the library defaulted to Radix for its component behavior and styling, but now it defaults to Base UI, a design system created by the same team behind Shadcn/UI. The change was implemented as part of an effort to streamline the library’s dependencies and improve integration with the Base UI ecosystem. Developers who clone or install Shadcn/UI will now see Base UI as the default setup, although Radix remains available as an optional dependency. The maintainers stated that this move aims to simplify the onboarding process and align the library more closely with Base UI’s design principles.

At a glance
updateWhen: announced March 2024
The developmentShadcn/UI announced that it now defaults to Base UI instead of Radix, marking a significant change in its setup for developers.

Implications for Developers Using Shadcn/UI

This change is significant because it alters the default component behavior and styling options for a large number of developers using Shadcn/UI. Moving from Radix to Base UI as the default impacts how UI components are rendered and styled, potentially affecting existing projects that relied on Radix’s features. The shift may also influence the broader ecosystem, as other libraries and frameworks that integrate with Shadcn/UI could adapt to the new default. For new projects, this simplifies setup by reducing dependencies, but existing projects may require adjustments if they depended on Radix-specific features. Overall, this signals a strategic pivot by the maintainers towards tighter integration with Base UI, which could influence future development and community adoption.

Full-Stack Web Development : Building Scalable Web Apps with React and Node.js Create dynamic, real-world web applications with modern frameworks

Full-Stack Web Development : Building Scalable Web Apps with React and Node.js Create dynamic, real-world web applications with modern frameworks

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

Background of Shadcn/UI’s Dependency Choices

Shadcn/UI, a popular component library for React developers, initially defaulted to Radix for its underlying UI primitives, leveraging Radix’s accessibility and composability features. Radix has been widely adopted for building accessible, customizable components. Recently, the maintainers announced a shift towards Base UI, a design system developed by the same team, aiming to unify their ecosystem and simplify dependencies. This transition aligns with broader industry trends toward using cohesive design systems and reducing reliance on multiple third-party libraries. The move was hinted at in developer discussions and was formalized in the latest repository update in March 2024. The change reflects ongoing efforts to optimize developer experience and streamline the library’s architecture.

“We have transitioned the default setup to Base UI to better unify our ecosystem and simplify the developer onboarding process.”

— Shadcn/UI Maintainers

Amazon

Radix UI alternative components

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

Remaining Questions About Compatibility and Future Updates

It is not yet clear how this change will impact existing projects that rely heavily on Radix-specific features. The maintainers have not specified if there will be further updates to support backward compatibility or if future versions will phase out Radix entirely. Additionally, the timeline for full adoption across the community remains uncertain, and some developers may need to adapt their codebases accordingly.
Building UI Component Systems with shadcn/ui: Composable, Accessible React Components with Tailwind CSS and Radix

Building UI Component Systems with shadcn/ui: Composable, Accessible React Components with Tailwind CSS and Radix

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

Next Steps for Developers and the Shadcn/UI Ecosystem

Developers are advised to review the updated documentation to understand the new default setup. Future releases are expected to focus on enhancing Base UI integration and possibly deprecating Radix as the default. The maintainers may also provide migration guides for existing projects. Community feedback and ongoing development will shape how the library evolves in the coming months, with updates likely to address compatibility concerns and feature enhancements.
Learning React: Modern Patterns for Developing React Apps

Learning React: Modern Patterns for Developing React Apps

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

Key Questions

Does this change affect existing projects?

Yes, existing projects that relied on Radix as the default may need to update their configurations to align with the new default setup based on Base UI.

Will Radix be discontinued?

Radix remains available as an optional dependency, but it is no longer the default in Shadcn/UI. Future updates may phase out its default status.

How do I migrate my project from Radix to Base UI?

The maintainers are expected to release migration guides and documentation to assist developers in transitioning their projects to the new default setup.

Why did the maintainers choose to switch defaults?

According to official statements, the switch aims to unify the ecosystem, reduce dependencies, and streamline the developer experience.

What does this mean for future development?

Future updates are likely to focus on enhancing Base UI integration and possibly deprecating Radix as the default, influencing the library’s evolution.

Source: hn

You May Also Like

The Long-Haul Flight Survival Guide

Master long-haul travel with practical tips on comfort, health, and jet lag. Prepare, stay relaxed, and recover faster on your next long flight.

One Of M’baku’s Most Iconic Lines Was Improvised #Sdcc

During SDCC, actor Winston Duke revealed that one of M’Baku’s most famous lines was improvised, highlighting creative moments behind the character.

Valve Open-source The Steam Machine E-ink Screen So You Can Make Your Own

Valve releases open-source code for the Steam Machine’s e-ink display, enabling users to create custom implementations and modifications.