Suggest Migration from Radix UI to React Aria for Better Accessibility and Flexibility
Author: NadirBakhshCreated Jul 16, 2025Updated Jul 16, 2025
Suggestion
I'd like to propose replacing or optionally supporting React Aria in place of (or alongside) Radix UI components within next-enterprise.
Why React Aria?
React Aria provides a comprehensive set of accessible UI primitives powered by ARIA and WAI-ARIA guidelines. It’s:
- ✅ Framework-agnostic and works seamlessly with Tailwind or custom CSS
- ♿ 100% accessible by default
- ️ Lightweight with no hard design opinions
- No layout rendering – fully headless like Radix, but with stronger accessibility guarantees
Proposal
- Introduce React Aria components (e.g.,
useDialog,useListBox,useOverlay, etc.) - Create wrappers (or custom hooks) that replicate current Radix behaviors but using Aria's headless APIs.
- Allow
next-enterpriseusers to choose either Radix or React Aria based on project needs.
Reference Links
- React Aria Docs
- Comparison of Headless UI Libraries vs Radix vs React Aria
- Example Dialog Component with React Aria
Open Questions
- Should this be a full replacement or an optional abstraction layer?
- Would we create a shared
ui/component layer to switch primitives easily?
Happy to submit a PR if the maintainers are open to this direction. Let me know your thoughts!
Source: Blazity/next-enterprise