1<page xmlns="http://projectmallard.org/1.0/" type="topic" id="introduction">
2  <info>
3    <link type="guide" xref="index#getting_started" />
4    <link type="next" xref="howto_setting_up_accerciser" />
5    <title type="sort">1. What is Accerciser?</title>
6    <desc>
7      An interactive accessibility explorer
8    </desc>
9    <credit type="author">
10      <name>Eitan Isaacson</name>
11      <email>eitan@ascender.com</email>
12    </credit>
13    <credit type="author">
14      <name>Peter Parente</name>
15      <email>pparent@us.ibm.com</email>
16    </credit>
17    <credit type="author">
18      <name>Aline Bessa</name>
19      <email>alibezz@gmail.com</email>
20    </credit>
21    <license>
22      <p>Creative Commons Share Alike 3.0</p>
23    </license>
24  </info>
25  <title>What is <app>Accerciser</app>?</title>
26  <p>
27    <app>Accerciser</app> is an interactive Python accessibility explorer.
28    It uses the AT-SPI library to inspect, examine, and interact with widgets, allowing
29    you to check if an application is providing correct information to assistive
30    technologies and automated testing frameworks. <app>Accerciser</app> comes with a set
31    of plugins that you can use to create custom views of accessibility
32    information.
33  </p>
34
35  <p>
36    By default, <app>Accerciser</app>'s main interface is comprised of three sections:
37    a tree view of the entire desktop accessible hierarchy, namely <link xref="desktop_tree_view">
38    Application Tree View</link>, and two plugin areas. If you prefer to see all plugins in a single
39    area, dividing <app>Accerciser</app>'s interface in two sections instead of three, press <keyseq><key>ctrl
40    </key><key>t</key></keyseq>. To re-divide it in three sections, press <keyseq><key>ctrl</key><key>t</key></keyseq> again.
41  </p>
42
43  <note style="tip">
44    <p>
45      Make sure that accessibility support is enabled in your desktop - otherwise,
46      <app>Accerciser</app> will not work as expected.
47    </p>
48  </note>
49
50  <figure>
51    <title><app>Accerciser</app></title>
52    <desc>
53      <app>Accerciser</app>'s default interface.
54    </desc>
55    <media type="image" mime="image/png" src="figures/accerciser-view.png">
56      <p>
57        <app>Accerciser</app>'s default interface.
58      </p>
59    </media>
60  </figure>
61
62  <section id="intended_audience">
63    <title><app>Accerciser</app>'s intended audience</title>
64    <p>
65      <app>Accerciser</app> fits the needs of many different audiences. User interface developers
66      use it to ensure that their applications are providing all of their features through AT-SPI.
67      Assistive technology developers are able to see what AT-SPI is providing to their applications.
68      Automated UI test developers find <app>Accerciser</app> beneficial since it exposes different
69      events that could be expected from their target application.
70    </p>
71  </section>
72
73  <section id="accerciser_plugin_architecture">
74    <title><app>Accerciser</app>'s plugin architecture</title>
75    <p>
76      <app>Accerciser</app> has an extensible, plugin-based architecture.
77      Its core code is fairly small and most of its features are part of
78      default plugins:
79    </p>
80    <list>
81      <item>
82        <p>
83          <link xref="interface_viewer_plugin">Interface Viewer</link> - A plugin that lets you explore the AT-SPI
84          interfaces provided by each accessible widget of a target application.
85        </p>
86      </item>
87      <item>
88        <p>
89          <link xref="validator_plugin">AT-SPI Validator</link> - A plugin that applies tests to verify the
90          accessibility of a target application.
91        </p>
92      </item>
93      <item>
94        <p>
95          <link xref="event_monitor_plugin">Event Monitor</link> - A plugin that displays AT-SPI events emitted by a target
96          application as they occur.
97        </p>
98      </item>
99      <item>
100        <p>
101          <link xref="quick_select_plugin">Quick Select</link> - A plugin that provides global hotkeys for quickly
102          selecting accessible widgets in <app>Accerciser</app>'s Application Tree View.
103        </p>
104      </item>
105      <item>
106        <p>
107          <link xref="api_browser_plugin">API Browser</link> - A plugin that shows the interfaces, methods, and
108          attributes available on each accessible widget of a target application.
109        </p>
110      </item>
111      <item>
112        <p>
113          <link xref="ipython_plugin">IPython Console</link> - A plugin that provides a full, interactive Python
114          shell with access to selected accessible widgets of a target application.
115        </p>
116      </item>
117    </list>
118  </section>
119
120
121  <section id="more_about_gnome_accessibility">
122    <title>More about Accessibility</title>
123    <p>
124       Accessibility is a core value that should touch all aspects of a Desktop
125       Environment. To help achieve it in GNOME, some libraries were developed,
126       such as ATK and AT-SPI. Though originated in GNOME, these libraries are now
127       also used in other Desktop Environments. To learn more about Accessibility
128       Libraries for GNU/UNIX systems, you can consult:
129    </p>
130    <list>
131      <item>
132        <p>
133          <link href="http://developer.gnome.org/atk/">ATK Accessibility Toolkit</link> -
134          ATK provides the set of accessibility interfaces that are implemented by other toolkits and applications.
135          Using the ATK interfaces, accessibility tools have full access to view and control running applications.
136        </p>
137      </item>
138      <item>
139        <p>
140          <link href="http://developer.gnome.org/at-spi-cspi/stable/">AT-SPI</link> -
141          AT-SPI is the primary service interface by which assistive technologies query and receive
142          notifications from running applications. Additional material is available from the
143          <link href="http://accessibility.kde.org/developer/atk.php#coreclasses">KDE Accessibility Development Community</link>.
144        </p>
145      </item>
146      <item>
147        <p>
148          <link href="https://help.gnome.org/users/gnome-help/stable/a11y.html">GNOME Desktop Accessibility Guide</link> -
149          A guide for anyone interested in how the GNOME Desktop supports the needs of users with disabilities.
150        </p>
151      </item>
152      <item>
153        <p>
154          <link href="http://developer.gnome.org/accessibility-devel-guide/stable/">GNOME Accessibility Developer's Guide</link> -
155          A guide for developers who want to ensure their applications are accessible to the widest audience of users.
156        </p>
157      </item>
158      <item>
159        <p>
160          <link href="https://wiki.gnome.org/Accessibility">GNOME Accessibility Project</link> -
161          The GNOME Accessibility Project includes the guides listed above along with many other useful links
162          for users, developers and system administrators.
163        </p>
164      </item>
165    </list>
166  </section>
167
168</page>
169