13 dépôts
Specialized implementations for managing focus and announcement consolidation for screen readers.
Distinct from Accessible Interface Design: Focuses on the specific programmatic control of VoiceOver announcements and focus rather than general design principles
Explore 13 awesome GitHub repositories matching user interface & experience · Screen Reader Optimizations. Refine with filters or upvote what's useful.
AsyncDisplayKit is an asynchronous UI framework and performance library for iOS. It provides a collection of performant alternatives to standard views, allowing developers to build responsive interfaces by offloading layout and rendering tasks to background threads. The framework is centered around a declarative layout engine based on a flexbox model, which calculates element positions and sizes asynchronously. It utilizes a node-based abstraction to wrap native views, enabling the instantiation and configuration of UI hierarchies on background threads to prevent main thread blocking. The sy
Exposes interface metadata to ensure proper screen reader navigation and accessibility regardless of the rendering method.
vue-awesome-swiper is a Vue.js component wrapper for the Swiper library, providing a declarative interface for creating touch-enabled carousels. It serves as a virtualized slider component that can render only visible slides to maintain performance when handling large datasets. The project distinguishes itself through high-performance rendering and a wide array of visual effects, including 3D transitions, parallax movements, and image zoom capabilities. It also supports the synchronization of multiple slider instances and provides accessibility features such as ARIA roles and focus-scrolling
Provides ARIA roles and focus-scrolling to ensure slider compatibility with screen readers.
Tippy.js is a JavaScript tooltip library and interactive popup framework used to create tooltips, popovers, and dropdowns. It functions as a floating UI component toolkit that renders content relative to a reference element with support for automatic positioning, flip-positioning, and offsets. The library acts as an accessible overlay manager, using ARIA attributes and focus management to ensure screen reader compatibility. It also serves as a CSS animation tool, providing utilities for transitions, spring physics, and themes to manage the visual entry and exit of floating interface elements.
Manages programmatic focus and announcement consolidation so screen readers describe tooltips upon element focus.
This project is a jQuery plugin and client-side form validator used to verify web form inputs before they are submitted to a server. It employs a rule-based validation engine to check user input against predefined or custom rules to ensure data integrity in the browser. The tool is designed as an ARIA-compliant validation system, using accessibility attributes to link error messages to input fields. This ensures that screen reader users are notified when a field contains an invalid value during the form submission process. The system supports remote server validation via asynchronous HTTP re
Marks invalid fields with accessibility attributes to announce error states to assistive technologies.
CodeMirror is a browser-based code editor framework and modular extension system used to embed full-featured text editors into web pages. It functions as a syntax tree parsing engine and a language server protocol client, enabling structural language analysis and deep integration with external programming language services. The project is distinguished by its modular architecture, which uses a system of extensions and compartments for dynamic reconfiguration at runtime. It supports real-time collaborative editing and state synchronization through an operational transformation framework, allow
Implements specialized focus and announcement management to ensure the editor is accessible via screen readers.
SwiftMessages is an iOS notification bar library and in-app message queue manager. It provides a system for displaying customizable alerts and status messages at the top, bottom, or center of the screen. The library features a hosting bridge that allows declarative SwiftUI views to be rendered within imperative UIKit containers. It includes a queue management system that sequences chronological notifications and filters duplicate alerts to prevent interface overlap. The system handles dynamic layout management to avoid occlusion by the system keyboard and provides an accessibility interface
Consolidates text elements into single VoiceOver announcements and manages focus during view transitions.
Tabulator is an interactive data table library and virtual DOM data grid used to create high-performance tables from JSON or arrays. It functions as a hierarchical data viewer and a spreadsheet interface component, capable of rendering thousands of records efficiently through viewport-based virtualization and progressive loading. The library distinguishes itself by providing a full spreadsheet interface mode with multi-sheet management, cell range selection, and bulk copy-paste capabilities. It supports complex data architectures, including nested data field mapping, expandable tree structure
Ensures table structure and content are correctly announced to assistive technologies using standard ARIA labeling.
Huh is a Go library for building interactive terminal forms, designed to work with the Bubbletea TUI framework. It provides a complete form-building system with text inputs, selection lists, confirmation prompts, and file pickers, all navigable using only the keyboard without requiring a mouse. The library distinguishes itself through dynamic form adaptation, allowing fields to be shown, hidden, or modified at runtime based on user selections and conditional rules. It includes screen reader support that announces form fields and falls back to text prompts when a visual interface is unavailabl
Renders form fields as standard text prompts so assistive technology can navigate them without a visual interface.
CKEditor 4 is a browser-based WYSIWYG rich text editor that enables users to create and format HTML content directly in the browser. It operates on a plugin-based architecture with a configurable toolbar system, DOM-based content editing, and an event-driven lifecycle, all delivered through a CDN-based distribution model. The editor supports skin-based theming and includes a legacy plugin compatibility layer for backward compatibility. The editor distinguishes itself as a cross-platform framework that integrates natively with Angular, React, Vue, Electron, Android, and iOS environments. It of
Ships built-in screen reader announcements that broadcast UI updates to assistive technologies.
Swup est une bibliothèque de transition de page et un chargeur de page AJAX conçu pour créer des transitions animées fluides entre les pages sur des sites web rendus côté serveur. Il fonctionne comme un orchestrateur de contenu DOM et un gestionnaire d'historique de navigateur, interceptant la navigation pour remplacer dynamiquement le contenu de la page et simuler une expérience d'application monopage. Le projet se distingue par un système de cycle de vie basé sur des hooks et une architecture de plugins qui permet l'injection de logique personnalisée et d'effets d'animation. Il prend en charge des méthodes visuelles avancées, notamment le morphing de contenu DOM, le rendu DOM parallèle pour les animations superposées et l'intégration avec l'API native View Transitions du navigateur. La bibliothèque couvre un large éventail de capacités, notamment la gestion de la navigation côté client, la mise en cache des pages en mémoire et le préchargement des pages en arrière-plan pour optimiser les performances. Elle fournit également une restauration complète de la position de défilement, des optimisations d'accessibilité pour les lecteurs d'écran et des outils pour synchroniser les métadonnées d'en-tête de document et l'exécution de scripts à travers les transitions.
Optimizes screen reader experience by managing focus and announcing page changes during dynamic content swaps.
Ce projet est un modèle administratif basé sur React et un kit UI conçu pour construire des tableaux de bord. Il fournit une collection complète de mises en page pré-stylisées, une bibliothèque de composants accessible et un framework UI basé sur Sass pour créer des interfaces administratives. Le modèle est spécifiquement structuré comme un projet optimisé pour l'IA, utilisant des modèles de codage et une organisation conçus pour aider les assistants IA à générer du code React cohérent et prêt pour la production. Il dispose d'un système de style flexible utilisant des variables Sass et des propriétés personnalisées CSS pour prendre en charge des thèmes clairs et sombres personnalisables. Le kit couvre un large éventail de capacités d'interface, y compris des widgets de visualisation de données, des tableaux interactifs avec tri et pagination, et des éléments de formulaire complexes comme des assistants multi-étapes. Il inclut des systèmes de navigation de haut niveau tels que des barres latérales et des fils d'ariane, ainsi que des composants structurels comme des grilles réactives, des boîtes de dialogue modales et des interfaces de calendrier accessibles.
Implements techniques to hide elements from the visual layout while remaining detectable by screen readers.
This project is a general purpose library for the .NET ecosystem, providing a collection of reusable helper methods and APIs for common programming tasks. It encompasses a UI component library for cross-platform development, a toolkit for MVVM architecture, and specialized utilities for memory management and native interoperability. The library distinguishes itself through high-performance memory abstractions, such as pooled buffers and contiguous two-dimensional memory spans, designed to reduce garbage collection pressure. It also provides native interop wrappers and bindings to facilitate d
Provides programmatic control over screen reader focus and announcement sequences to ensure logical navigation.
Ouch is a command-line archive utility designed for compressing and decompressing files across multiple formats, including zip, tar, 7z, and zstd. It functions as a secure archive processor that sanitizes metadata to prevent path traversal attacks and terminal injection during extraction. The tool features a chain compression pipeline that allows for the sequential application of multiple compression algorithms by parsing chains of file extensions in a filename. It also includes a dedicated accessibility mode that optimizes terminal output for screen readers and text-to-speech technologies by
Optimizes command results for screen readers by stripping non-essential details for improved clarity.