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

Add a linter to check the images' alt text #117

Open
wants to merge 6 commits into
base: main
Choose a base branch
from

Conversation

arnaucasau
Copy link

In order to meet the IBM Accessibility Requirements for the API docs, we need to ensure that all images have appropriate alt text so that users can understand any meaningful visuals. The alt text should serve the same purpose as the images on the page, conveying the same meaning rather than describing visual characteristics. In addition, if an image contains important words for understanding the content, the alt text should include those words as well.

This PR adds a linter to check that all images have alt text. The current invalid images, if any, have been included in an allowlist that will help us to not break CI before the text is added.

If the script detects an image without alt text, it will show an error indicating the file where the image is located and the line where we are using a sphinx directive like .. image:: or .. plot:: that generates an image. Example:

💔 Some images are missing the alt text

Errors found in qiskit_ibm_runtime/fake_provider/__init__.py:
- Error in line 34: .. plot::

Alt text is crucial for making documentation accessible to all users. It should serve the same purpose as the images on the page, conveying the same meaning rather than describing visual characteristics. When an image contains words that are important to understanding the content, the alt text should include those words as well.

To fix the error, the :alt: [Your text here] option must be added under the lines indicated in the error messages. However, If the .. plot:: directive is used, but no image is generated, you can use the option :nofigs:.

tools/verify_images.py Outdated Show resolved Hide resolved
Co-authored-by: Eric Arellano <[email protected]>
@arnaucasau arnaucasau marked this pull request as draft December 5, 2024 08:43
@arnaucasau arnaucasau marked this pull request as ready for review December 10, 2024 15:59
@caleb-johnson
Copy link
Collaborator

Thanks @arnaucasau , so it seems we don't have any problematic images since I don't see an allowlist?

@caleb-johnson
Copy link
Collaborator

Could you please pull main into this branch to clear up the current CI failure

@arnaucasau
Copy link
Author

arnaucasau commented Dec 10, 2024

Thanks for fixing CI @caleb-johnson! Exactly, all the images are okay in this case :)

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

Successfully merging this pull request may close these issues.

3 participants