Skip to main content
v0.1 dev

Accessibility

Inclusive by contract

HealthEye targets WCAG 2.2 AA and treats field conditions, intermittent connectivity and high-stakes interpretation as part of accessibility.

Fundamentals

Interfaces must be perceivable, operable, understandable and robust. Semantic HTML, logical order, visible focus and text alternatives are defaults.

Interactive control rules

Profile healtheye-control-aa-v1 applies to Select and every interactive control.

RuleRequirementRelease test
control-name-role-valueExpose a persistent accessible name, semantic role, current value, disabled state and expanded state.Screen-reader announcement includes label, value, role and state.
control-keyboardAll actions work without pointer input.Complete selection with keyboard only and verify focus returns to the trigger.
control-targetInteractive targets are at least 44 by 44 logical pixels.Measure trigger and every option at compact and expanded widths.
control-contrastText meets 4.5:1 and boundaries, focus, checks and other UI graphics meet 3:1.Test Pasture, Atlantic and forced/high-contrast modes.
control-resilienceSelection remains understandable at 200% zoom, large text, narrow width and reduced motion.Verify 320 px, 200% zoom, text scale 2.0 and reduced motion.

Visualization rules

Profile healtheye-visualization-aa-v1 applies to every one of the 106 visualization factories on Web, Flutter, Python/ML, Figma and BI adapters.

RuleRequirementRelease test
viz-purpose-summaryEvery visual has a visible title and a concise plain-language interpretation that states the decision it supports.A user can understand the main finding without inspecting marks.
viz-equivalent-dataEvery visual has an equivalent table, structured list or downloadable accessible dataset containing the same values and units.Compare visual values with the accessible representation.
viz-non-colorColour is never the only carrier of series, severity, freshness, selection or missingness.Visual remains interpretable in grayscale and simulated colour-vision deficiency.
viz-contrastText meets 4.5:1; meaningful marks, axes, focus and adjacent graphical objects meet at least 3:1.Automated token contrast plus representative rendered-image review.
viz-keyboardInteractive marks, filters and disclosures are keyboard operable with visible focus and logical order; otherwise the equivalent data view provides the full task.Complete the analysis task without mouse or touch.
viz-motionAnimation never conveys unique information, auto-advances or blocks comprehension; reduced-motion mode is static or near-instant.Verify reduced-motion/system animation settings.
viz-reflowAt 320 px, 200% browser zoom and text scale 2.0, titles, summaries, legends and controls reflow without loss or two-dimensional scrolling.Audit compact, medium and expanded containers.
viz-state-provenanceLoading, empty, delayed, stale, offline, error, missing and excluded data are explicitly named; provenance, units, aggregation and time context remain available.Inspect every state without relying on colour or icon alone.
viz-spatial-alternativeMaps, point clouds, camera overlays, pose skeletons and 3D scenes provide a non-spatial summary of detected entities, confidence, coordinates/region and relationships.Complete identification and review tasks without interpreting the canvas.
viz-cognitive-safetyAvoid deceptive perspective, unexplained acronyms, unlabeled thresholds and unsupported causal claims; use farmer-readable language for customer-facing views.Domain comprehension review with representative farmers and operators.

Operational states

Offline, delayed, stale, synchronized and unknown are written states. They are not represented by colour alone and are not conflated with animal health.

Testing

Every stable component requires keyboard, screen-reader naming, zoom/reflow, contrast, reduced-motion and forced-state checks before production promotion.