# Why another modal/dialog plugin
- ✅ Universal: works in
vue@2
andvue@3
🚧 - ✅ Renderless/headless: no assumptions about styles or markup. You have full control.
- ✅ Accessibility first — Focus trap[1] keyboard navigation + aria-attributes
- ✅ Fully controlled component
- ✅ Pure vue, no wrapping.
- ✅ Simplicity + size
- 🕸 Nested dialogs (questionable pattern (opens new window), not recommended, but possible because it happens (opens new window)) and it's actually in WAI-ARIA examples (opens new window) so...
# Footnotes
- Since
v0.5.0
focus trap is powered by the awesomefocus-trap
(opens new window) — go and give them some ✨
# Why Not ...?
Because there are a lot of vue dialog/modals out there that treat accessibility as side-effect not a feature. Also most of them ship with preset markup/styles and you can't use your own components markup with them: this makes this package a little bit more verbose to setup, but way more flexible to adapt to almost any scenario.