-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Reflex-native component library built on base HTML elements #6247
Copy link
Copy link
Open
Labels
roadmaphttps://github.com/reflex-dev/reflex/issues/2727https://github.com/reflex-dev/reflex/issues/2727
Description
Replace Radix Themes as the default component library with a Reflex-native set of components built on base HTML elements and Tailwind CSS.
Motivation
Radix Themes is a powerful component library, but shipping it as the core default has drawbacks:
- It's a large dependency that not every project needs
- It imposes Radix's design opinions on all Reflex apps
- Customizing beyond what Radix exposes is difficult
- It ties the framework's component story to an external project's release cycle
A Reflex-native library built on plain HTML elements + Tailwind gives users full styling control, smaller bundles, and no external component framework lock-in.
Scope
- Build a core set of UI components (buttons, inputs, selects, dialogs, tabs, etc.) using base HTML elements with Tailwind styling
- These become the default components shipped with
reflex-html(see monorepo split ENG-9185) - Radix Themes continues to be maintained as
reflex-radix— fully supported, just no longer the default - The new components should be easy to theme and extend
Related
- ENG-9185 — Monorepo split (
reflex-htmlandreflex-radixas separate packages) - ENG-4136 — Top-level / extensible theming
- ENG-4952 — Reduce External Dependencies (Radix section)
- ENG-20 — "New Core Library" (cancelled, 2023)
Roadmap
Part of the Reflex Framework Roadmap — Component Library & UI section.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
roadmaphttps://github.com/reflex-dev/reflex/issues/2727https://github.com/reflex-dev/reflex/issues/2727