Accessibility

The application should be as usable by as many people as possible. For more, read the accessibility page in the Bitcoin Design Guide, and the Wikipedia entry on web accessibility.

A few things to consider:

  • Accurate visible text labels for form elements
  • Clear, programmatically-defined accessible names for UI controls (most applications get this wrong)
  • Visual highlights for focused and selected states of UI elements with sufficient contrast
  • Multi-sensory feedback on interactions (e.g. avoiding the use of color-alone to convey meaning)
  • Alternate interaction options (e.g. multiple ways for navigation)
  • Sufficient visual contrast
  • Support dynamic text size, zoom, reflow, and responsive design for smaller viewports
  • Simple, clear language designed to convey the purpose of an action, event, or control
  • Keyboard navigation for interactive controls
  • Screen reader and other Assistive Technology (AT) support
  • Internationalization and Localization

Operating systems allow users to personalize display settings. Options include increased contrast, bold text, larger or smaller text sizes, and much more. These should be supported as much as possible.