Ember UI
Teams kept rebuilding the same buttons and dialogs. I open-sourced a small, accessible component library. It now ships in dozens of products.
- Year
- 2022
- Role
- Author and maintainer
- Stack
- TypeScript · Web components · CSS · Playwright

The problem
Every project I joined had its own button, its own dialog and its own focus bugs. Each team fixed the same accessibility problems again.
What I built
Twenty components as plain web components: no framework required, keyboard and screen reader tested in CI, themed with a handful of CSS custom properties.
What changed
The library is used in dozens of products, and the most common bug report is now a feature request.