eui
eui copied to clipboard
Build a component (or pattern) to intake data and render an accessible summary from GenAI
Description
Is your feature request related to a problem? Please describe. Charts, tables, and data visualizations need text summaries to be more accessible.
Describe the solution you'd like @gvnmagni && @1Copenut have been meeting with engineers working on GenAI to explore what would be needed on the frontend to make this possible. Our meeting on 14 December yielded a good discussion and ask for a combined component that can broadly do three things:
- Take in data to be summarized
- Keep the DOM updated with progress and announce changes to screen readers
- Provide a callback for consumers to render the summary accessibly
Trevor will be reviewing our meeting notes and will update this issue with more detailed specs.
Desired timeline The engineers expressed interest in working on this project in the near term. Having a component built out was identified as a first milestone toward a proof-of-concept.
Proposed EUI component spec
This section outlines the low-level component requirements for an MVP.
- Component would render a block-level container
- Container would be a live region with
aria-live="polite" andaria-atomic="false"` to read text changes only - Container would have a button element
- Consumers will fetch data using the button
onClickprop - Consumers will trigger DOM updates when button is clicked
- Consumers will fetch data using the button
- Component will have a
callbackprop that returns a summary from the LLM - Consumers can use the callback to update the DOM to show the summary to all users, or just screen readers
Proposed EUI pattern spec
This section outlines the usage patterns for different summaries we might want to include in upstream products.
- Component renders visual and semantic text for all users about a chart, visualization, or timeline
- Component renders visual and semantic text for all users about a table or datagrid
- Component renders visual and semantic text for all users about a dashboard or full page view
- Component renders screen reader only summaries of any of the previous pattern examples. This may not be relevant--we ideally want the summaries for all users.
I would push against an EUI component for this - a pattern or example for an on-demand live region summary of any figure is something that I definitely think we could do though.
👋 Hi there - this issue hasn't had any activity in 6 months. If the EUI team has not explicitly expressed that this is something on our roadmap, it's unlikely that we'll pick this issue up. We would sincerely appreciate a PR/community contribution if this is something that matters to you! If not, and there is no further activity on this issue for another 6 months (i.e. it's stale for over a year), the issue will be auto-closed.