Overview
A matrix of events by channel (email, push, in-app) with switches, quiet hours and a reset to the defaults. It comes from the Settings kit and also works on its own. Keyboard and screen readers: A real table: column headers name the channels, each event is a row header, and the groups are row-group headers. Saving, saved and failed states are announced from a status region in the card header; after Reset, focus moves to Undo. Quiet hours use native selects, so keyboards, typeahead and phone pickers work; with reduced motion the summary changes without sliding. Built with React 19 and TypeScript, Tailwind CSS 4, Lucide icons and Motion. Light and dark themes come from CSS variables you can edit, and every demo uses believable sample data you replace with your own. Included: the component source, its sample data, light and dark theme variables, a runnable demo page, and setup guides for people and for AI coding agents.
Highlights
- Production-ready, documented source
- Clean, componentized architecture
- Drops into your stack with minimal setup

