26 repositorios
Principles and implementations for making complex interactive UIs usable for people with disabilities.
Distinguishing note: Focuses on the design and implementation of accessible complex interactions, which is not covered by the general software design candidates.
Explore 26 awesome GitHub repositories matching user interface & experience · Accessible Interface Design. Refine with filters or upvote what's useful.
Angular Material is an accessible web component library and UI framework designed for building single-page applications within the Angular ecosystem. It provides a collection of pre-built user interface elements that implement the Material Design specification to ensure a consistent look and feel across different devices. The project functions as a cross-platform design system, offering a unified set of motion and interaction patterns. It focuses on delivering a standardized system of visual and behavioral specifications that adapt to various screen sizes. The library covers a broad range of
Implements interface designs that meet accessibility standards for screen readers and keyboard navigation.
Blockly is a block-based coding library and visual programming editor that allows users to build programs by interlocking graphical blocks. It functions as a visual code generator, translating these arrangements of logic blocks and variables into executable source code for various programming languages. The library provides a framework for creating custom visual programming languages and low-code logic designers. It utilizes an SVG-based UI library to render interactive, draggable elements on a web canvas. The system is designed as an accessible web UI framework with integrated keyboard navi
Implements keyboard navigation and screen reader support to make complex visual interfaces accessible.
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.
Evergreen is a React UI component library and design system framework. It provides a collection of pre-styled, accessible interface elements used to build consistent web applications. The library functions as a server-side rendered UI kit, allowing components to generate HTML on the server to improve page load speeds and search engine visibility. It includes a centralized styling layer for managing colors, typography, and spacing through custom UI theming. The framework covers accessible web design and enterprise interface design, utilizing a token-based styling system to maintain a uniform
Implements principles for making complex interactive user interfaces usable for people with disabilities.
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.
Este proyecto es un plugin de jQuery y validador de formularios del lado del cliente utilizado para verificar las entradas de formularios web antes de que sean enviadas a un servidor. Emplea un motor de validación basado en reglas para verificar la entrada del usuario contra reglas predefinidas o personalizadas para garantizar la integridad de los datos en el navegador. La herramienta está diseñada como un sistema de validación compatible con ARIA, utilizando atributos de accesibilidad para vincular mensajes de error a los campos de entrada. Esto asegura que los usuarios de lectores de pantalla sean notificados cuando un campo contiene un valor no válido durante el proceso de envío del formulario. El sistema admite la validación remota del servidor mediante solicitudes HTTP asíncronas y permite la inyección dinámica de reglas para añadir lógica de validación personalizada. Gestiona la interfaz de usuario a través del renderizado de errores vinculado al DOM y utiliza disparadores basados en eventos para ejecutar comprobaciones durante eventos de foco, desenfoque o envío.
Marks invalid fields with accessibility attributes to announce error states to assistive technologies.
Vue Material is a comprehensive UI toolkit and framework for Vue.js that implements the Material Design specification. It provides a suite of pre-built, themed components designed to create consistent and responsive web applications. The library features dynamic theme support for runtime color scheme changes and automatic accessibility contrast management. It is designed for compatibility with server-side rendering to improve initial load times and search engine optimization, and it includes internationalization support for locale translation and text direction adjustments. The toolkit cover
Ensures accessibility through automatic contrast management and standardized interaction patterns.
This project is a software engineering style guide and a curated collection of architectural patterns and coding standards. It provides a multi-language coding standard to ensure maintainable software across Ruby, Python, JavaScript, and Swift. The project establishes a development workflow specification for version control, continuous integration, and peer review to maintain a linear project history. It also includes a web accessibility framework based on ARIA and WCAG standards, using design tokens and semantic HTML patterns to build inclusive interfaces. The guides cover a broad range of
Defines visual and interactive standards for creating accessible user interfaces.
shadcn-vue is an accessible design system framework and UI component library for Vue applications. It provides a collection of accessible, unstyled interface elements and pre-designed building blocks styled with Tailwind CSS, all of which are built on top of Radix Vue primitives. The project utilizes a command line interface to install specific components and themes directly into a local project directory rather than as pre-compiled dependencies. This distribution model allows users to own and modify the source code locally to create a custom design language. The library covers a broad range
Ensures inclusive user interfaces by providing accessible form inputs, modals, and navigation elements.
Carbon is an enterprise design system that provides a comprehensive collection of reusable UI components, design tokens, and guidelines for building professional web applications. It functions as a CSS framework that enforces a unified design language across projects through standardized typography, spacing, and color palettes. The system utilizes a platform-agnostic design token system to maintain visual consistency across different technologies. This includes centralized management of brand colors, motion easing curves, and a curated library of accessible SVG icons. The framework covers a
Ensures accessibility through built-in ARIA labels and keyboard support across all UI components.
Base Web is a React UI component library and design system implementation. It provides a collection of reusable interface elements and a responsive web framework designed to enforce a consistent visual language and layout across digital products. The project focuses on enterprise design systems and responsive web design, offering tools that automatically adapt user interfaces to fit various screen sizes and devices. It incorporates accessible interface design to ensure components follow standards for users with disabilities. The library utilizes a theme-based design token system and a compos
Implements accessible interface design to ensure components follow standards for users with disabilities.
PrimeReact is a comprehensive UI component library for building interactive user interfaces with React. It provides an accessible component suite, a form input framework, and a data visualization toolkit designed to meet accessibility standards through built-in keyboard navigation and focus management. The library features a themed design system that allows for visual customization via pre-defined skin sets or an unstyled mode. This unstyled mode decouples component behavior and accessibility logic from the presentation layer, enabling the implementation of custom corporate design systems. C
Provides a comprehensive suite of UI elements following accessibility standards, including keyboard navigation and focus management.
ReactXP is a framework for building cross-platform mobile and web applications from a single codebase using React. It provides a declarative interface that maps to different native implementation sets depending on the target environment. The project enables consistent visual experiences across operating systems through a flexbox-based layout engine, a virtual stack for navigation management, and a unified native-bridge API for accessing system services. It distinguishes itself with specialized capabilities for declarative animation orchestration, platform-specific logic resolution, and an aut
Implements screen reader labels and event announcements to ensure compatibility with 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
Ensures in-app notifications are fully compatible with VoiceOver for users with visual impairments.
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 es una librería de transición de página y cargador de páginas AJAX diseñado para crear transiciones animadas y fluidas entre páginas en sitios web renderizados por el servidor. Funciona como un orquestador de contenido DOM y gestor de historial del navegador, interceptando la navegación para reemplazar el contenido de la página dinámicamente y simular una experiencia de aplicación de una sola página. El proyecto se diferencia mediante un sistema de ciclo de vida basado en hooks y una arquitectura de plugins que permite la inyección de lógica personalizada y efectos de animación. Soporta métodos visuales avanzados incluyendo el morphing de contenido DOM, renderizado DOM paralelo para animaciones superpuestas e integración con la API nativa de View Transitions del navegador. La librería cubre una amplia gama de capacidades, incluyendo la gestión de navegación del lado del cliente, caché de páginas basada en memoria y precarga de páginas en segundo plano para optimizar el rendimiento. También proporciona una restauración completa de la posición de desplazamiento, optimizaciones de accesibilidad para lectores de pantalla y herramientas para sincronizar metadatos de cabecera de documento y ejecución de scripts a través de transiciones.
Optimizes screen reader experience by managing focus and announcing page changes during dynamic content swaps.