mirror of
https://github.com/django/django.git
synced 2025-06-05 03:29:12 +00:00
Add accessibility guidelines for contributors
This commit is contained in:
parent
92d6cff6a2
commit
9215b63184
114
docs/internals/contributing/writing-code/accessibility.txt
Normal file
114
docs/internals/contributing/writing-code/accessibility.txt
Normal file
@ -0,0 +1,114 @@
|
|||||||
|
=============
|
||||||
|
Accessibility
|
||||||
|
=============
|
||||||
|
|
||||||
|
All aspects of Django must be compatible with our accessibility standards,
|
||||||
|
and with the specific support targets we aim for.
|
||||||
|
|
||||||
|
.. _accessibility-standards:
|
||||||
|
|
||||||
|
Accessibility standards
|
||||||
|
=======================
|
||||||
|
|
||||||
|
Django aims for conformance with `WCAG 2.2`_ at the AA level.
|
||||||
|
WCAG is the most well established standard for web accessibility. AA-level
|
||||||
|
guidelines are the most common legal compliance target around the world.
|
||||||
|
|
||||||
|
Wherever applicable, we also attempt to follow other best practices, such as:
|
||||||
|
|
||||||
|
* WCAG 2.2 AAA-level guidelines.
|
||||||
|
* The upcoming `WCAG 3.0`_ guidelines.
|
||||||
|
* `ATAG 2.0`_ guidelines for authoring tools.
|
||||||
|
|
||||||
|
.. note::
|
||||||
|
Do you want to learn more about accessibility without diving straight into
|
||||||
|
standards? We recommend `The A11Y Project`_,
|
||||||
|
a community-driven effort to make digital accessibility easier.
|
||||||
|
|
||||||
|
.. _WCAG 2.2: https://www.w3.org/TR/WCAG22/
|
||||||
|
.. _WCAG 3.0: https://www.w3.org/TR/wcag-3.0/
|
||||||
|
.. _ATAG 2.0: https://www.w3.org/TR/ATAG20/
|
||||||
|
.. _The A11Y Project: https://www.a11yproject.com/
|
||||||
|
|
||||||
|
.. _accessibility-support-targets:
|
||||||
|
|
||||||
|
Accessibility support targets
|
||||||
|
=============================
|
||||||
|
|
||||||
|
Beyond standards, we want to make sure Django actually works for people using
|
||||||
|
a wide range of input devices and assistive technologies.
|
||||||
|
The best way to do this effectively is to take accessibility considerations
|
||||||
|
into account as part of designing features. If in doubt, consult
|
||||||
|
with users who rely on assistive technologies or with accessibility experts.
|
||||||
|
|
||||||
|
.. _accessibility-testing-baseline:
|
||||||
|
|
||||||
|
Accessibility testing baseline
|
||||||
|
------------------------------
|
||||||
|
|
||||||
|
Always test user interface changes with:
|
||||||
|
|
||||||
|
* Keyboard-only navigation
|
||||||
|
* Automated checks in the `Accessibility Insights`_ browser extension,
|
||||||
|
or an equivalent tool with the `Axe`_ checker.
|
||||||
|
|
||||||
|
Where appropriate, also test with:
|
||||||
|
|
||||||
|
* Touch-only navigation
|
||||||
|
* 400% browser zoom
|
||||||
|
* forced-colors mode DevTools emulation
|
||||||
|
|
||||||
|
.. note::
|
||||||
|
How much should you test? Devise the UI with accessibility in mind,
|
||||||
|
and the testing will only be needed as a final check. For more complex
|
||||||
|
interfaces, confer with other contributors to decide on testing targets.
|
||||||
|
|
||||||
|
.. _assistive-technologies:
|
||||||
|
|
||||||
|
Assistive technologies
|
||||||
|
----------------------
|
||||||
|
|
||||||
|
Where more extensive testing is appropriate,
|
||||||
|
here are free assistive technologies we recommend testing with:
|
||||||
|
|
||||||
|
* `NVDA`_ on Windows with Firefox ESR
|
||||||
|
* `VoiceOver`_ on macOS with Safari
|
||||||
|
* `Narrator`_ on Windows with Microsoft Edge
|
||||||
|
* Windows Magnifier and macOS Zoom
|
||||||
|
* Windows Speech Recognition and macOS Voice Control
|
||||||
|
* VoiceOver on iOS, or TalkBack on Android
|
||||||
|
* `Contrast themes`_ on Windows
|
||||||
|
|
||||||
|
Where expert help is available, also consider testing with:
|
||||||
|
|
||||||
|
* `JAWS`_ on Windows
|
||||||
|
* `Dragon`_ on Windows
|
||||||
|
|
||||||
|
.. _Accessibility Insights: https://accessibilityinsights.io/
|
||||||
|
.. _Axe: https://github.com/dequelabs/axe-core
|
||||||
|
.. _NVDA: https://www.nvaccess.org/
|
||||||
|
.. _Narrator: https://support.microsoft.com/en-us/windows/complete-guide-to-narrator-e4397a0d-ef4f-b386-d8ae-c172f109bdb1
|
||||||
|
.. _VoiceOver: https://support.apple.com/en-gb/guide/voiceover-guide/welcome/web
|
||||||
|
.. _TalBack: https://support.google.com/accessibility/android/answer/6283677
|
||||||
|
.. _Contrast themes: https://support.microsoft.com/en-us/windows/change-color-contrast-in-windows-fedc744c-90ac-69df-aed5-c8a90125e696
|
||||||
|
.. _JAWS: https://www.freedomscientific.com/products/software/jaws/
|
||||||
|
.. _Dragon: https://www.nuance.com/en-gb/dragon.html
|
||||||
|
|
||||||
|
.. _accessibility-known-issues-how-to-help:
|
||||||
|
|
||||||
|
Known issues and how to help
|
||||||
|
============================
|
||||||
|
|
||||||
|
Parts of Django do not meet our accessibility targets at the moment.
|
||||||
|
We actively work on fixing issues both as part of ongoing maintenance,
|
||||||
|
and bigger overhauls. To learn about known issues, and get involved, see:
|
||||||
|
|
||||||
|
* ``#accessibility`` on the `Django Discord server`_.
|
||||||
|
* `Accessibility issues on the ticket tracker`_.
|
||||||
|
* Our `django accessibility improvements`_ project board.
|
||||||
|
* The `Accessibility team`_.
|
||||||
|
|
||||||
|
.. _Django Discord server: https://discord.gg/xcRH6mN4fa
|
||||||
|
.. _Accessibility issues on the ticket tracker: https://code.djangoproject.com/query?status=!closed&keywords=~accessibility
|
||||||
|
.. _django accessibility improvements: https://github.com/orgs/django/projects/7
|
||||||
|
.. _Accessibility team: https://www.djangoproject.com/foundation/teams/#accessibility-team
|
@ -40,6 +40,7 @@ It's important to understand how we work and the conventions we adopt.
|
|||||||
|
|
||||||
coding-style
|
coding-style
|
||||||
javascript
|
javascript
|
||||||
|
accessibility
|
||||||
../committing-code
|
../committing-code
|
||||||
|
|
||||||
We maintain a curated list of small issues suited to first-time or less
|
We maintain a curated list of small issues suited to first-time or less
|
||||||
|
Loading…
x
Reference in New Issue
Block a user