Founding price: $35, then $79.99 after 23:59 UTC on 4 November, then $79.99
Get ProTwo persistent screen-reader announcers (polite and assertive) with a useAnnounce hook that also repeats identical messages.
This item has no props to tune. Use the lens above to change theme, density, direction and more.
Use it to announce changes that have no visible element to focus: an item added to a cart, a list re-sorted, a background save that finished. One provider at the app root serves every component.
Do not announce things the person caused and can already hear, such as typing. Keep assertive for errors that need interrupting. Do not use it instead of visible feedback.
| Prop | Type | Default | Description |
|---|---|---|---|
clearAfter | number | 5000 | Milliseconds before the announcement text is removed. |
| Prop | Type | Default | Description |
|---|---|---|---|
announce(message, options?) | (string, { politeness }) => void | - | politeness is polite (default) or assertive. |
role="status" (polite) and role="alert" (assertive).clearAfter ms so stale messages are not left for virtual cursor users.The component ships a Testing Library test (live-region.test.tsx) that covers persistent empty regions, routing by politeness, repeated messages and clearing.