Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Build a component (or pattern) to intake data and render an accessible summary from GenAI #7423

Open
1Copenut opened this issue Dec 14, 2023 · 2 comments

Comments

@1Copenut
Copy link
Contributor

1Copenut commented Dec 14, 2023

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:

  1. Take in data to be summarized
  2. Keep the DOM updated with progress and announce changes to screen readers
  3. 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" and aria-atomic="false"` to read text changes only
  • Container would have a button element
    • Consumers will fetch data using the button onClick prop
    • Consumers will trigger DOM updates when button is clicked
  • Component will have a callback prop 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.
@cee-chen
Copy link
Contributor

cee-chen commented Jan 2, 2024

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.

Copy link

github-actions bot commented Jul 1, 2024

👋 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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants