38 रिपॉजिटरी
Systems for capturing and processing keyboard and mouse input events within a user interface.
Distinct from User Interaction: The provided candidates are either predictive, logging-focused, or specific to web interfaces, whereas this requires a general TUI input handling category.
Explore 38 awesome GitHub repositories matching user interface & experience · User Interaction Handling. Refine with filters or upvote what's useful.
This project is a vanilla JavaScript reference guide and implementation collection designed to replace legacy libraries with native browser patterns. It provides a set of native JavaScript patterns for selecting, modifying, and navigating HTML elements, alongside a web API implementation guide for handling events and styles. The project serves as a reference for implementing asynchronous JavaScript patterns using native promises and fetch for remote data and background tasks. It also includes a client-side utility collection for performing data transformations, type validation, and element me
Provides a system for capturing and processing user input events within the browser interface.
Valdi is a cross-platform native UI framework that compiles declarative TypeScript code into native platform views. It functions as a declarative UI engine and multi-platform frontend toolchain designed to achieve high performance by avoiding web views. The framework features a native bridge binding tool that generates type-safe bindings between TypeScript and native languages, allowing direct access to platform APIs. It supports a hot-reload development workflow, enabling real-time updates to the user interface across platforms without requiring full project recompilation. The system includ
Detects and handles touch events and complex movements to trigger interactive interface behaviors.
Vditor is a browser-based Markdown editor and rendering engine that supports multiple editing interfaces, including a visual rich-text experience, instant rendering, and a traditional side-by-side split-view preview. It serves as an authoring tool for technical documentation and a component for web-based editor integration. The project is distinguished by its support for complex technical content, utilizing specialized rendering for mathematical formulas, flowcharts, sequence diagrams, and mind maps. It also functions as a collaborative document review tool, enabling users to attach anchored
Captures and processes keyboard and focus events to trigger custom interaction callbacks.
FTXUI is a C++ terminal user interface library and cross-platform console framework used for building interactive command line applications. It functions as a declarative terminal layout engine and a component-based UI toolkit that enables the creation of responsive interfaces. The library is distinguished by its terminal graphics and animation capabilities, allowing for the rendering of custom shapes, data plots, and smooth visual transitions using easing functions. It provides a comprehensive set of interactive widgets and a layout system utilizing flexbox and grid containers that adapt to
FtX handles keyboard and mouse events through interactive widgets like checkboxes, sliders, and menus.
AndroidNote is a technical knowledge base and reference resource for Android development. It provides comprehensive guidance on application architecture, custom view development, and advanced graphics programming. The project is distinguished by its depth in visual implementation, covering pseudo-3D perspective projections via virtual cameras and complex 2D rendering using Bézier curves and PorterDuff color blending. It also provides detailed methodologies for app modularization and the management of internal libraries through private Maven repositories and JitPack. The reference surface ext
Handles basic finger interactions such as initial contact, movement, and release to trigger UI actions.
tsparticles is a JavaScript particle animation library and configuration-driven visual effects engine used to create customizable effects, confetti, and interactive backgrounds using HTML5 Canvas. It functions as a plugin-based graphics engine and a web component animation engine, allowing for the generation of complex behaviors and themes through structured JSON configuration objects. The project provides a cross-framework animation wrapper with dedicated compatible components for integrating effects into React, Vue, Angular, and Svelte. Its modular architecture allows users to extend the en
Captures and processes mouse movements, clicks, and drag-and-drop actions to trigger particle reactions.
This project is a cross-platform UI framework and native desktop GUI library. It provides a unified set of instructions to render native windows, forms, and layouts across different operating systems by mapping high-level instructions to the native widgets and controls of the host environment. The toolkit includes a vector graphics engine for rendering custom shapes, gradients, and high-density images using brushes and matrices. It also serves as a native dialog provider for system-level operations such as file path selection and message box alerts. The library covers a broad range of GUI co
Captures and processes user input events, such as button clicks and value changes, to trigger specific actions.
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
Triggers custom functions when users interact with specific column headers.
GoCV is a computer vision library and Go language binding for OpenCV. It serves as an image processing toolkit and deep learning inference engine, providing programmatic access to a wide range of algorithms for image manipulation, object detection, and video analysis. The project differentiates itself through high-performance native bindings and hardware acceleration. It utilizes a foreign function interface to map Go calls to C++ functions and includes a hardware-agnostic backend dispatch to route neural network tasks to computation engines such as CUDA and OpenVINO. The library covers a br
Captures keyboard and mouse events to enable interactive control of vision tasks.
Clappr is an HTML5 web media player and plugin-based framework used to render video and audio across different web platforms. It functions as a playback engine supporting adaptive bitrate streaming through HLS and DASH protocols to ensure smooth media delivery. The project is distinguished by a modular architecture that allows developers to extend player functionality and add support for new media formats via a plugin system. It also includes a dedicated controller for managing digital rights management license requests to secure premium content. The player covers a broad range of capabiliti
Registers callbacks to handle user interaction requirements for playback on mobile devices.
Responds to slash commands, context menus, buttons, select menus, and modals triggered by users.
Hilo is an HTML5 game engine for building 2D games that run across browsers and devices. It renders graphics through Canvas, DOM, or WebGL backends, automatically selecting the best option for the target environment. The engine provides a complete game development solution with sprite, skeletal, and particle animation, along with a texture atlas system for efficient image loading and rendering. The framework distinguishes itself through its integration of the DragonBones skeletal animation engine, which drives bone-based character movement without frame-by-frame sprites, and its Chipmunk phys
Responds to user interactions like clicks and touches on visual elements by attaching event listeners.
Mavericks is an opinionated Android state management framework that structures screen-level state as a single immutable object and processes user actions through a unidirectional data flow. It enforces state immutability to prevent unintended mutations and simplify debugging, while managing state subscriptions and cleanup based on Android lifecycle events to prevent memory leaks. The framework uses a ViewModel-driven architecture where business logic and state management are encapsulated in ViewModels that survive configuration changes. User actions are handled through dedicated intent object
Process user intents in a dedicated object that updates state, keeping business logic separate from the UI layer.
node-notifier एक Node.js लाइब्रेरी और क्रॉस-प्लेटफ़ॉर्म रैपर है जो macOS, Windows और Linux पर नेटिव डेस्कटॉप नोटिफिकेशन भेजने के लिए एक एकीकृत JavaScript इंटरफ़ेस प्रदान करता है। यह JavaScript कोड और libnotify, Growl और Windows Toasters जैसी सिस्टम-लेवल नोटिफिकेशन बाइनरीज़ के बीच एक पुल के रूप में कार्य करता है। यह प्रोजेक्ट Node.js एप्लिकेशन, Electron डेस्कटॉप ऐप्स और शेल स्क्रिप्ट में नेटिव अलर्ट्स को इंटीग्रेट करने का समर्थन करता है। इसमें तर्कों या पाइप किए गए इनपुट का उपयोग करके सीधे टर्मिनल से डेस्कटॉप अलर्ट ट्रिगर करने के लिए एक कमांड-लाइन यूटिलिटी शामिल है। यह लाइब्रेरी कस्टम नोटिफिकेशन ऑडियो के प्लेबैक सहित नेटिव अलर्ट डिलीवरी को मैनेज करती है। यह यूज़र इंटरैक्शन की भी निगरानी करती है, जिससे एप्लिकेशन को प्रोग्रामेटिक रिस्पॉन्स ट्रिगर करने के लिए क्लिक या टाइमआउट के लिए सुनने की अनुमति मिलती है। ऑपरेटिंग सिस्टम रिपोर्टर सेटिंग्स, जैसे एप्लिकेशन आइडेंटिफ़ायर और तात्कालिकता स्तरों को एडजस्ट करने के लिए कॉन्फ़िगरेशन विकल्प उपलब्ध हैं।
Provides functionality to wait for a user to click an alert or for a timeout to occur to execute a callback.
tcell is a Go terminal user interface library and framework for building cell-based applications. It functions as a terminal emulator backend and input processor, utilizing a change-based diffing engine to manage screen state and efficiently render updates. The project is distinguished by its pluggable backend abstraction, which allows terminal interfaces to be rendered across physical terminals or compiled into WebAssembly for web browser display. It provides a virtual screen simulation to enable programmatic event injection and output inspection for automated application testing. Its capab
Captures keyboard and mouse input events to trigger application actions based on physical interaction.
gluestack-ui is a cross-platform React component library built with Tailwind CSS. It provides over 30 pre-built, accessible components that can be installed by copying their source files directly into a project, giving developers full control over customization without external runtime dependencies. Every component implements WAI-ARIA patterns, keyboard navigation, and screen reader support out of the box. A key differentiator is the copy-paste architecture: rather than a traditional package dependency, component source code is placed in the project, allowing direct editing and eliminating ve
Manages hover, pressed, and focus states on touchable elements for immediate visual feedback.
NotificationBanner एक iOS नोटिफिकेशन बैनर लाइब्रेरी और Swift UI कंपोनेंट है जिसे इन-ऐप अलर्ट्स और नोटिफिकेशन टोस्ट प्रदर्शित करने के लिए डिज़ाइन किया गया है। यह एक इन-ऐप अलर्ट मैनेजर के रूप में कार्य करता है जो विज़ुअल ओवरलैप को रोकने के लिए कई स्क्रीन नोटिफिकेशन्स की कतार, टाइमिंग और डिसमिसल को हैंडल करता है। यह लाइब्रेरी व्यापक बैनर कस्टमाइज़ेशन प्रदान करती है, जो एप्लिकेशन ब्रांडिंग के साथ संरेखित करने के लिए कस्टम व्यूज़, फॉर्मेट किए गए टेक्स्ट और प्रोटोकॉल-आधारित स्टाइल्स के उपयोग की अनुमति देती है। यह एक्सेसरी व्यूज़ को एम्बेड करने और स्क्रीन के ऊपर या नीचे बैनर रखने को सपोर्ट करती है। इस सिस्टम में टैक्टाइल अलर्ट्स के लिए हैप्टिक फीडबैक इंटीग्रेशन और यूज़र टैप्स और स्वाइप जेस्चर्स को हैंडल करने के लिए एक इवेंट-ड्रिवन कॉलबैक तंत्र शामिल है। लाइफसाइकिल मैनेजमेंट को ऑटोमैटिक टाइमर्स या प्रोग्रामेटिक डिसमिसल के माध्यम से हैंडल किया जाता है, जबकि एक कतार-आधारित सिस्टम यह सुनिश्चित करता है कि नोटिफिकेशन्स क्रमिक रूप से प्रदर्शित हों।
Captures and processes user responses, such as taps and swipes, specifically for notification banners.
AAChartKit iOS, iPadOS और macOS के लिए एक घोषणात्मक (declarative) चार्टिंग लाइब्रेरी और डेटा विज़ुअलाइज़ेशन फ्रेमवर्क है। यह एक मल्टी-टाइप सांख्यिकीय चार्टिंग इंजन के रूप में कार्य करता है जो लाइन, बार, बबल, बॉक्स प्लॉट और पोलर चार्ट सहित विभिन्न प्लॉट प्रकारों को रेंडर करता है। फ्रेमवर्क सटीक पिक्सेल नियंत्रण के साथ दृश्य तत्वों को खींचने के लिए एक Core Graphics वेक्टर रेंडरिंग इंजन का उपयोग करता है। यह एनिमेशन, ज़ूमिंग, पैनिंग और यूज़र इंटरैक्शन इवेंट्स के लिए इन-बिल्ट सपोर्ट की विशेषता वाला इंटरैक्टिव डेटा विज़ुअलाइज़ेशन के लिए एक सिस्टम प्रदान करता है। लाइब्रेरी सांख्यिकीय डेटा प्लॉटिंग और कस्टम चार्टिंग के लिए व्यापक क्षमताओं को कवर करती है, जिसमें एरर बार और वॉटरफॉल चार्ट जैसे जटिल प्रकारों को रेंडर करने की क्षमता शामिल है। यह डायनामिक डेटा एनिमेशन, मल्टी-चार्ट सिंक्रोनाइज़ेशन और अनुकूलन योग्य टूलटिप्स और वैल्यू रेंज मार्कर्स के साथ इंटरैक्टिव डैशबोर्ड के निर्माण का सपोर्ट करती है।
Captures and processes user input events to synchronize multiple charts and trigger custom callbacks.
JDA is a Java wrapper for the Discord API, providing a framework for building automated agents and integrating applications with the chat platform. It functions as both a REST API client for managing server entities and a gateway client that maintains persistent WebSocket connections for real-time state updates. The library features a comprehensive voice API module for managing audio streaming, voice channel connectivity, and soundboard integration. It also includes a specialized toolkit for interactive UI design, enabling the creation of slash commands, buttons, select menus, and modal input
Processes and responds to various user interaction types and message component triggers.
JDA is a Java library that serves as a Discord API wrapper, bot framework, and voice API client. It enables applications to interact with the Discord REST API and real-time gateway to build automated assistants, manage servers, and handle user interactions. The project includes a sharding manager to distribute gateway connections across multiple shards for scaling high-volume deployments. It also provides a UI component library for constructing interactive buttons, select menus, and modal forms within messages. Its capabilities cover voice and audio management, including audio streaming and
Processes user executions of application commands and retrieves the provided options and values.