Skip to content

Suggest Migration from Radix UI to React Aria for Better Accessibility and Flexibility #344

@NadirBakhsh

Description

@NadirBakhsh

🧩 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!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions