AccessKit (https://github.com/AccessKit/accesskit) looks like a good choice:
AccessKit makes it easier to implement accessibility, for screen readers and other assistive technologies, in toolkits that render their own user interface elements. It provides a cross-platform, cross-language abstraction over accessibility APIs, so toolkit developers only have to implement accessibility once.
As of writing (2026-06-25):
The following platform adapters are currently available:
* Android adapter: This adapter implements the Java-based Android accessibility API.
* iOS adapter: This adapter implements the UIAccessibility protocols in the UIKit framework.
* macOS adapter: This adapter implements the NSAccessibility protocols in the AppKit framework.
* Unix adapter: This adapter implements the AT-SPI D-Bus interfaces, using zbus, a pure-Rust implementation of D-Bus.
* Windows adapter: This adapter implements UI Automation, the current Windows accessibility API.
Planned adapters
* web (for applications that render their own UI elements to a canvas)
For testing on Linux, for example, Orca could be used (https://orca.gnome.org/).