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

  1. Introduce React Aria components (e.g., useDialog, useListBox, useOverlay, etc.)
  2. Create wrappers (or custom hooks) that replicate current Radix behaviors but using Aria's headless APIs.
  3. Allow next-enterprise users to choose either Radix or React Aria based on project needs.

Reference Links


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!