Screen Reader Table Header Announcer Helper
Free to download on every platform. Comes pre-installed on BotFone, BotPad and BotFlip — with extra free apps included.
About this app
WHAT IT DOES
Screen Reader Table Header Announcer Helper scans the current page for HTML tables and analyzes their header structure and accessibility. It extracts table headers (th elements with scope="col/row"), caption elements, and header associations. The floating panel shows each table's header structure with visual indicators of which headers apply to which data cells. Audible announcements of table header associations are provided as the user navigates through table cells via keyboard, helping users understand the data context. Tables with missing or improperly formatted headers are highlighted, and suggestions for fixing common table accessibility issues are offered. Export table analysis as JSON or text for documentation and accessibility auditing.
WHERE IT RUNS
Works on any web page with HTML tables, including data-heavy applications, dashboards, spreadsheets, and content management systems. The script detects tables using standard HTML table structure and analyzes their accessibility attributes. It works best on pages with structured data tables and can help identify accessibility issues in any web application.
HOW TO USE
The panel displays all tables on the page with their dimensions, header structures, and any accessibility issues found. Click "Scan Tables" to analyze all tables on the current page. Each table card shows whether it has a caption, column headers, row headers, and scope attributes. Use the Tab key to navigate through table cells—when a cell receives focus, the script announces the column and row header associations aloud. The analysis report shows issues like missing captions, missing headers, and missing scope attributes. Copy the report as text for documentation or export as JSON for further analysis. The auto-announce toggle controls whether header associations are spoken aloud.
MECHANISM — TABLE HEADER ASSOCIATION WITH KEYBOARD NAVIGATION
The script uses a multi-step analysis to understand table structure. It first identifies all tables on the page and extracts column headers from th elements with scope="col" or thead elements, and row headers from th elements with scope="row". Caption elements are also extracted for context. When the user navigates to a table cell via keyboard, the script calculates the cell's row and column indices using DOM traversal. It then matches these indices to the extracted column and row headers to determine the appropriate headers for that cell. The header information is then announced using the Web Speech API, providing context similar to a screen reader. The analysis engine identifies accessibility issues by checking for missing caption elements, missing header cells, and missing scope attributes.
THE PANEL
The floating panel is fully draggable and remembers its position per domain. Click the minimize button to collapse it to a small bubble, or press Escape to hide it. The panel automatically adjusts to different screen sizes and can be resized to show more content. All settings, including auto-announce preferences, are saved per domain. The panel integrates smoothly with any page layout using the BGPanel framework, maintaining clean separation from page content.
PLEASE NOTE
This script requires the free BotGentz extension to run. It does not send any data to external servers; all table analysis data and settings remain entirely local to your browser using GM_setValue. The script never reads password fields, hidden inputs, or file inputs. It stores only table structure data and analysis results from publicly visible page content. The script does not modify the page; it only observes and analyzes table structures. TTS announcements use the browser's built-in SpeechSynthesis API and require user interaction to start. Data persists across browser sessions and is isolated per browser profile.