62 مستودعات
Mechanisms for registering and managing callbacks for user interactions and system events.
Distinguishing note: Focuses on low-level event registration rather than high-level state management.
Explore 62 awesome GitHub repositories matching user interface & experience · Event Handling. Refine with filters or upvote what's useful.
react-use is a collection of reusable state and effect hooks for managing common logic in React applications. It serves as a comprehensive library for implementing state management patterns and wrapping various browser APIs into consistent hook interfaces. The project provides a specialized toolkit for DOM interaction and browser API integration, allowing components to track element dimensions, manage cookies, and monitor hardware sensors. It includes a suite of animation and timing utilities for physics-based numeric interpolation and frame-synced state updates. Beyond basic state managemen
Tracks browser window dimensions and provides callbacks when the window is resized.
Dioxus is a cross-platform development framework designed for building native desktop, mobile, and web applications from a single codebase. It utilizes a declarative component model and macro-powered syntax to define reusable interface elements, which are then rendered as native widgets or web elements. At its core, the framework employs a signal-based reactivity system that tracks state dependencies to trigger granular updates, ensuring efficient interface performance without re-rendering the entire application tree. The framework distinguishes itself through a unified full-stack runtime tha
Manages state updates by passing event handlers to child components.
This project is a framework for building interactive, graphical-style terminal applications. It provides a declarative component model that organizes user interfaces into a tree of nested widgets, each managing its own lifecycle, state, and rendering. By subclassing the base application class, developers can construct complex, keyboard-navigable interfaces that run directly within terminal emulators. The framework distinguishes itself through a reactive architecture and a CSS-based layout engine. It uses a reactive attribute system to automatically track state changes and trigger targeted int
Propagates events from a child widget to its parent to allow parent widgets to respond to unhandled input.
Avalonia is a cross-platform desktop framework that enables the creation of native-feeling applications for Windows, macOS, and Linux from a single codebase. It functions as a declarative UI toolkit, allowing developers to define complex visual hierarchies and interface structures using a markup-based syntax that maps directly to underlying object properties. By utilizing the Model-View-ViewModel architectural pattern, the framework facilitates a clean separation between application logic and user interface layout, which simplifies unit testing and component maintenance. The framework disting
Attaches event handlers to elements to respond to user interactions and bubbled events.
CodeMirror 5 is a browser-based code editor and extensible UI component. It functions as a syntax highlighting engine and a programmable text surface, providing a professional coding experience embedded within web pages. The project is distinguished by its ability to act as a collaborative text editor, synchronizing document changes across multiple users in real time. It also includes a dedicated Vim emulation layer that implements modal keyboard interactions, motions, and operators. The system covers broad capability areas including language support for autocompletion and error analysis, co
Registers callbacks to react to editor events such as content changes, cursor movement, and viewport updates.
ButterKnife is an Android view binding library and Java annotation processor that automates the linking of UI elements and resources to class fields and methods. It functions as a system for managing view references and event listeners to reduce repetitive setup code in Android applications. The library uses compile-time code generation to replace manual view lookups and type casting with generated helper classes, ensuring a reflection-free runtime. It differentiates itself by providing mechanisms for binding interaction events directly to methods, eliminating the need for anonymous inner cla
Connects user interface interactions and click listeners to specific methods without anonymous inner class wrappers.
Slint is a declarative user interface framework designed for building native graphical applications across desktop, mobile, and embedded platforms. It utilizes a specialized markup language to define reactive interface components, which are then compiled into optimized machine code to ensure high performance and minimal resource consumption. By separating visual structure from application logic, the framework enables developers to create consistent interfaces that run efficiently on hardware ranging from resource-constrained microcontrollers to high-end desktop systems. The framework distingu
Manages callbacks for user interactions and system events to signal state changes.
This project is a cross-platform chatbot framework designed to integrate generative artificial intelligence models into messaging services. It provides a unified architecture for building and deploying automated bots that maintain consistent conversation state, user identity, and interaction logic across multiple messaging platforms from a single codebase. The framework distinguishes itself through a modular adapter system that normalizes platform-specific webhooks and events into a standardized internal schema. It includes a comprehensive toolkit for constructing rich, interactive user inter
Registers callbacks for incoming messages, user mentions, and reactions to trigger automated bot responses based on activity.
typeahead.js is a JavaScript autocomplete library used to build searchable input fields that provide real-time suggestions from local or remote data sources. It functions as a client-side suggestion engine and an asynchronous search interface, providing a customizable UI toolkit for managing search suggestion menus. The library focuses on data aggregation and performance, allowing the combination of multiple local or remote datasets into a single interface grouped by category. It utilizes rate-limited asynchronous fetching to prevent API overloading and employs search data prefetching and loc
Triggers callbacks when users select suggestions, change queries, or exchange asynchronous data requests.
Muduo is a C++11 event-driven network library and framework designed for building high-concurrency Linux servers. It provides a toolkit for implementing scalable network services and socket communication using non-blocking I/O and asynchronous event processing. The framework implements a multi-threaded TCP server architecture that distributes connection handling across multiple CPU threads to maximize server throughput. This is achieved through a one-loop-per-thread model and a reactor pattern implementation, which dispatch network events from a central demultiplexer to registered handler fun
Implements a callback system that triggers user-defined functions upon network read or write events.
Anko is an Android Kotlin library designed to simplify application development through a set of domain-specific languages and extensions. It functions as a programmatic UI DSL, an SQLite wrapper, an SDK utility, and an asynchronous framework. The project provides a declarative layout system that allows developers to build user interfaces through code instead of static XML markup. It distinguishes itself by offering a fluent database layer that eliminates manual cursor management and a concurrency system that uses weak references to prevent memory leaks in activities. The library covers broad
Provides non-blocking event listeners for views to maintain interface responsiveness during background tasks.
DearPyGui is a GPU-accelerated, immediate-mode graphical user interface framework for Python. It provides a high-performance toolkit for building interactive desktop applications by leveraging native hardware-accelerated rendering backends across multiple operating systems. By utilizing an immediate-mode execution model, the library offers direct control over the rendering loop and element state, enabling the creation of responsive, dynamic interfaces. The framework distinguishes itself through its ability to handle complex, high-frequency visual updates, making it suitable for real-time data
Registers event listeners to detect and respond to user input and state changes.
This project is a cross-platform library designed for desktop application development, providing a unified interface for window management, input handling, and hardware-accelerated graphics. It serves as a foundational framework that abstracts platform-specific windowing protocols and graphics APIs, enabling developers to create interactive software that functions consistently across Windows, macOS, and Linux. The library distinguishes itself by providing deep integration with low-level graphics APIs, specifically OpenGL and Vulkan. It manages the complexities of graphics context initializati
Monitors window lifecycle events to enable responsive, event-driven application logic.
Hammerspoon is a programmable automation engine for macOS that enables deep system-level control through a Lua scripting environment. By bridging high-level scripts with native Objective-C APIs, it allows users to interact with the operating system's accessibility tree, intercept hardware input streams, and manage the lifecycle of running applications. The project distinguishes itself through an event-driven architecture that registers asynchronous hooks for system notifications and hardware events. This allows for real-time automation, such as remapping keyboard and mouse inputs, managing wi
Triggers callbacks when a webview window is moved, resized, closed, or changes focus state to enable responsive desktop automation.
react-canvas is a library for drawing user interface elements to a hardware-accelerated canvas instead of the standard document tree. It provides a system for rendering components to a canvas to improve rendering speed and frame rates. The project includes a layer manager to organize visual elements and cache expensive drawing operations. It features a text engine capable of rendering multi-line text with precise character metric measurements and truncation, as well as a virtualized list system that processes only visible items to maintain smooth scrolling. Interaction is handled through a c
Implements a system to map native canvas coordinates back to virtual components to simulate standard event behavior.
Agent-S is a multimodal AI agent and LLM desktop automation framework designed to control operating systems through graphical user interface interactions. It functions as a computer use interface, utilizing vision-language grounding to translate natural language goals into precise screen coordinates and system actions. The project differentiates itself by combining structured accessibility tree inspection with vision-based element localization. It manages cross-application workflows by mapping conceptual descriptions to physical pixels and simulating low-level keyboard and mouse events to mov
Captures structural text and imagery of the screen for processing by vision models.
Respond is a legacy browser compatibility layer and adaptive asset delivery tool. It functions as a CSS3 media query polyfill and responsive image loader, providing the necessary mechanisms to emulate modern responsive design features in outdated web browsers. The project differentiates itself by combining stylesheet parsing with dynamic style application to emulate minimum and maximum width media queries. It employs a system for selecting and serving the most appropriate image sources based on viewport width, aspect ratio, and resolution. The tool covers broad capability areas including res
Tracks window resize events to trigger the re-evaluation and application of responsive style rules.
Terminal.Gui is a cross-platform .NET toolkit for building interactive text-based user interfaces. It provides a component-based architecture, a terminal rendering engine, and a declarative layout system to create console applications that run consistently across Windows, macOS, and Linux. The framework distinguishes itself with a comprehensive set of interactive console widgets, including data grids, hex editors, and hierarchical tree components. It supports advanced visual capabilities such as 24-bit True Color, Sixel image support, and a relative-coordinate layout system that adapts to ter
Provides mechanisms for capturing and responding to low-level keyboard key down and key up events.
libui is a native C GUI library and cross-platform framework used to build desktop applications. It provides a unified C abstraction layer and a native widget toolkit that maps directly to the host operating system's original controls, windows, and menu bars. The project functions as a portable UI wrapper, employing platform-specific backends and a native-API wrapper to maintain visual and behavioral fidelity across different operating systems. It utilizes a C-language binding layer to ensure portability across various compilers and targets. The library covers native interface construction a
Uses C function pointers to trigger application logic via callbacks when user interactions occur.
This is an asynchronous HTTP client for Android that simplifies network requests by wrapping Apache HttpClient. It provides a callback-based networking library for fetching remote data and communicating with servers without blocking the user interface. The project includes a multipart HTTP uploader for sending binary files and large data payloads, as well as a JSON parser to convert raw response text into structured data objects. It features a session manager that persists cookies in local application preferences to maintain state across multiple requests. Additional capabilities include aut
Uses a callback-based system to trigger listener methods once background network requests complete.