physical-ai-toolchain

This document defines accessibility requirements for documentation and CLI output in this repository. Use it when authoring Markdown files or shell scripts that produce user-facing text.

Scope

This project applies accessibility best practices to two areas.

Area What the project controls
Documentation Markdown files rendered on GitHub and documentation sites
CLI output Shell scripts in deploy/ and scripts/ that emit messages

[!NOTE] Runtime application accessibility (screen reader support, WCAG UI compliance) is outside the scope of this infrastructure-focused repository. If the project adds a web UI or desktop component in the future, revisit this page and expand coverage.

Documentation Accessibility

All Markdown files follow these conventions, which are enforced by markdownlint (MD045, MD001) and PR review.

Alt Text Guidelines

Alt text describes the content and purpose of an image.

Image Type Alt Text Approach
Architecture diagram Summarize components and data flow shown
Screenshot Describe the UI state and highlighted element
Logo or badge State the badge name and status
Decorative image Use empty alt (![](path)) only when truly decorative

CLI Output Accessibility

Shell scripts support the NO_COLOR standard. When the NO_COLOR environment variable is set (any value), scripts suppress ANSI color codes so output works with screen readers and log aggregators.

Run any deployment script without color:

NO_COLOR=1 ./infrastructure/setup/01-deploy-robotics-charts.sh

Implementation Pattern

Shared color functions in shared/lib/common.sh check NO_COLOR before emitting escape sequences:

if [[ -z "${NO_COLOR+x}" ]]; then
  info()  { printf '\033[1;34m[INFO]\033[0m  %s\n' "$*"; }
  warn()  { printf '\033[1;33m[WARN]\033[0m  %s\n' "$*" >&2; }
  error() { printf '\033[1;31m[ERROR]\033[0m %s\n' "$*" >&2; }
else
  info()  { printf '[INFO]  %s\n' "$*"; }
  warn()  { printf '[WARN]  %s\n' "$*" >&2; }
  error() { printf '[ERROR] %s\n' "$*" >&2; }
fi

Generated Artifacts

Automated pipelines, Terraform plans, and Helm chart outputs are out of scope. Accessibility standards apply only to human-authored content committed to the repository.

OpenSSF Compliance

This page, combined with markdownlint enforcement (MD045, MD001) and NO_COLOR support in deployment scripts, satisfies the OpenSSF Best Practices Silver criterion accessibility_best_practices:

The project MUST include a statement about software accessibility in its documentation, addressing at minimum accessibility of the documentation itself and software output.