#linux #screen-reader

atspi-connection

A method of connecting, querying, sending and receiving over AT-SPI

12 breaking releases

0.13.0 Sep 18, 2025
0.11.0 Jun 2, 2025
0.9.0 Feb 26, 2025
0.8.0 Aug 14, 2024
0.1.0 Jun 16, 2023

#35 in Accessibility

Download history 61489/week @ 2025-08-05 61431/week @ 2025-08-12 61706/week @ 2025-08-19 80897/week @ 2025-08-26 74659/week @ 2025-09-02 73090/week @ 2025-09-09 74094/week @ 2025-09-16 75474/week @ 2025-09-23 72883/week @ 2025-09-30 75828/week @ 2025-10-07 82715/week @ 2025-10-14 86380/week @ 2025-10-21 79301/week @ 2025-10-28 77188/week @ 2025-11-04 74371/week @ 2025-11-11 75390/week @ 2025-11-18

321,922 downloads per month
Used in atspi

Apache-2.0 OR MIT

505KB
10K SLoC

atspi-connection

This crate uses the the following crates to support its various functions:

  • atspi-common: to receive events from AT-SPI.
  • atspi-proxies: to send events and query live information over AT-SPI.

This is essentially a client-facing library where you can use the AccessibilityConnection structure to get streams of AT-SPI events coming from a Linux system. See the examples folder and documentation on how to use this library.

Feature Flags

  • default: wrappers, p2p
  • p2p: dependencies async-executor" and enableszbus/p2p`
  • tracing: enable support for the tracing crate
  • wrappers: enable support for atspi-common wrapper types that categorize events by interface, as well as the all-encompassing Event enum that can store any event type.
    • This also enables the event_stream function that allows you to receive a stream of Events instead of specific events.

P2P

Peer-to-Peer (P2P) support in atspi enables direct connections to applications, bypassing the central accessibility bus when possible.

See: introduction to atspi p2p

Dependencies

~10–16MB
~329K SLoC