17 Repos
Systems for tracking and managing references to draggable and droppable elements within an interface.
Distinct from Interactive UI Elements: Distinct from Interactive UI Elements: focuses on the registry mechanism for spatial tracking rather than the elements themselves.
Explore 17 awesome GitHub repositories matching user interface & experience · Interactive Element Registries. Refine with filters or upvote what's useful.
Draggable is a JavaScript library for implementing draggable elements and sortable lists within a web browser. It provides a functional toolset for creating accessible drag and drop interfaces and a mechanism for dynamically swapping, sorting, and reordering HTML elements in real time. The library features a cross-input interaction layer that unifies mouse, touch, and force-touch events into a single stream for consistent behavior across different devices. It specifically includes tools for providing screen reader feedback and assistive technology support to ensure drag operations are accessi
Supports the definition of specific target areas that accept and react to elements being dragged over them.
This project is a modular toolkit for building accessible, component-based drag-and-drop interfaces in React. It provides a foundational framework for managing complex spatial interactions, state synchronization, and element registration, allowing developers to create interactive web applications that support mouse, touch, and keyboard inputs. The library distinguishes itself through a highly extensible architecture that separates input handling from interaction logic. It utilizes a sensor-based input abstraction to normalize diverse user interactions and a plugin-driven lifecycle to inject c
Maintains a registry of draggable and droppable elements to enable coordinate detection and collision resolution.
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
Provides access to recently created interface elements for dynamic runtime interaction.
Stimulus is a JavaScript behavior framework and client-side logic layer used to add interactive behavior to server-rendered HTML. It functions as a system of DOM component controllers that organize JavaScript logic into classes, allowing developers to enhance server-delivered markup without replacing the rendering process with a client-side framework. The framework uses data attributes to bind JavaScript classes to HTML elements and map DOM events to specific methods through document-level event delegation. It employs a lifecycle manager based on mutation observers to automatically instantiat
Tracks and manages the active state of controllers as their elements enter or leave the document.
gridstack.js is a JavaScript grid layout library and responsive dashboard framework used to create interactive interfaces with draggable and resizable elements. It functions as a drag-and-drop layout manager and a JSON-serializable layout engine, allowing user-defined interface states to be persisted and restored. The library distinguishes itself through a touch-enabled grid interface and a responsive system that automatically adjusts item placement based on screen breakpoints. It features a collision-based layout engine that manages overlapping coordinates to shift or swap elements, alongsid
Validates which dragged elements are permitted to be dropped onto a target based on custom logic.
Craft.js is a framework for building extensible drag-and-drop page editors using React components and serializable state management. It provides the core infrastructure to construct custom page builders where users can compose layouts by dragging, dropping, and repositioning elements within a structured editor environment. The framework manages editor state through a component-based node tree, where each user element is represented as an internal node storing its type, props, and parent relationships. This state is managed via React Context and can be serialized to JSON for persistence and sh
Marks elements as containers that accept child elements, making those children draggable within the editor.
language-ext is a functional programming framework for C# that provides a suite of immutable data structures and monadic types. It enables the implementation of pure functional programming patterns, utilizing containers to manage side effects, optional values, and error handling. The library is distinguished by its advanced concurrency and state management tools, including a software transactional memory system and lock-free atomic references. It also provides specialized utilities for distributed systems, such as vector clocks for causality tracking and deterministic data conflict resolution
Creates new sets by applying mapping functions or filtering elements of an existing set.
This repository is a collection of practical code snippets and implementation patterns for Flutter and Dart. It serves as a comprehensive guide and reference for asynchronous programming, state management patterns, and UI component design. The project provides advanced language reference material covering generics, reflection, factory constructors, and null-aware operators. It also includes specific utilities for manipulating Dart collections, such as helper methods for transforming and filtering maps, lists, and iterables. The coverage extends to high-level capabilities including asynchrono
Creates new sets by applying a transformation function to each element of another collection.
ScottPlot is a cross-platform, high-performance charting library for .NET that renders interactive plots across desktop and web GUI frameworks including Windows Forms, WPF, MAUI, Avalonia, Blazor, and WinUI. It provides an optimized rendering engine capable of displaying millions of data points with interactive pan, zoom, and live data streaming, while also supporting image export to formats like PNG and SVG for file output, cloud applications, and notebooks. The library distinguishes itself through a comprehensive set of chart types including scatter, line, bar, pie, heatmap, financial, rada
Provides draggable lines, markers, spans, and rectangles that respond to mouse input without manual event wiring.
react-konva is a declarative React canvas graphics library and 2D vector graphics framework. It serves as a rendering engine and interactive canvas toolset that allows for the drawing and management of complex 2D shapes and graphics using a React component model. The library maps reactive component trees to an underlying object-oriented graphics scene graph, enabling the synchronization of visual states with application data. It provides specialized tools for building interactive graphical interfaces, including support for multi-touch gestures, drag-and-drop functionality, and real-time trans
Handles complex user interactions including clicking, resizing, and dragging on individual canvas elements.
Pannellum ist ein WebGL-Panorama-Viewer und ein Framework für virtuelle Touren, das dazu dient, equirectangulare oder Cubemap-Bilder als immersive 360-Grad-Umgebungen zu rendern. Es fungiert als Renderer für Bilder mit mehreren Auflösungen und als Player für Panoramavideos, der sowohl statische Bilder als auch sphärische Videowiedergabe unterstützt. Das Projekt zeichnet sich durch seine Fähigkeit aus, extrem große, hochauflösende Panoramen durch Generierung und Laden von Kacheln in mehreren Auflösungen zu verarbeiten. Es ermöglicht die Erstellung interaktiver virtueller Touren durch die Verknüpfung mehrerer Panoramaszenen mittels Übergangs-Fades und interaktiver Hotspots. Das System umfasst Funktionen für automatisierte Kamerabewegungen, Integration der Geräteorientierung für mobile Look-around-Erlebnisse und ein Hook-System zur Überwachung von Viewer-Ereignissen. Zudem bietet es Hilfsmittel für UI-Lokalisierung, Steuerung des Viewer-Zustands und das Rendern von Fallback-Inhalten für Browser ohne Hardwarebeschleunigung.
Enables the placement of clickable markers within a panorama to provide additional context or metadata.
ZIO is a functional effect system for the JVM that models asynchronous and concurrent programs as pure, composable values with typed error handling and dependency injection. Its core identity is built on fiber-based concurrency, where lightweight, non-blocking fibers execute millions of concurrent tasks with structured lifecycle management, and a dual-channel error model that separates expected business failures from unexpected system defects at compile time. The system provides effect-typed dependency injection through a layer-based dependency graph, pull-based reactive stream processing with
Provides transactional set transformation as part of its software transactional memory capabilities.
Leafer UI ist eine hochperformante HTML5-Canvas-Rendering-Engine und eine Bibliothek für 2D-Vektorgrafiken. Sie nutzt einen hierarchischen Szenenbaum zur Verwaltung von Formen, Pfaden und Text und bietet ein Toolkit für den Aufbau interaktiver Canvas-Anwendungen und expansiver unendlicher Arbeitsflächen. Die Engine ist als plattformübergreifendes Canvas-Toolkit konzipiert, das die Kernlogik von der Zeichen-API entkoppelt, wodurch sie in Web-, Mobil-, Server- und Mini-Programm-Umgebungen ausgeführt werden kann. Sie zeichnet sich durch die Bereitstellung spezialisierter Werkzeuge für die Entwicklung interaktiver Grafikeditoren aus, einschließlich Hit-Detection, Event-Bubbling und Transformationssteuerungen. Ihr Funktionsumfang deckt Vektorform-Rendering, komplexe Pfaderstellung und Bewegungsanimationen ab. Das Framework enthält eine Layout-Engine mit flexiblem Box-Modell, Koordinatenraum-Transformation für präzise Positionierung und Unterstützung für Multi-Threaded-Offscreen-Rendering in Web-Workern. Zudem bietet es Werkzeuge für Szenenverwaltung, Elementmaskierung und den Export von Canvas-Inhalten in Bilder oder JSON. Die Bibliothek kann über ein Standard-Script-Tag integriert oder innerhalb reaktiver Frameworks wie React, Vue und Nuxt verwendet werden.
Provides a specialized system for managing user interactions specifically for 2D canvas shapes and groups.
RmlUi ist ein plattformübergreifender UI-Renderer und eine Middleware-Bibliothek, die die Erstellung von Benutzeroberflächen mittels einer Teilmenge von HTML und CSS ermöglicht. Sie fungiert als rendering-agnostische Schicht, die darauf ausgelegt ist, Web-Standard-Layout und -Styling in benutzerdefinierte Game-Engines und eingebettete Anwendungen zu integrieren. Das Framework zeichnet sich durch die Integration von Lua für dynamische Logik und Steuerung aus sowie durch ein spezialisiertes Toolkit zum Rendern von SVG-Bildern und Lottie-Animationen. Es nutzt ein austauschbares Rendering-Backend, das die Geometrieerzeugung von der finalen Anzeige entkoppelt, wodurch texturierte Geometrie für verschiedene Grafik-Pipelines generiert werden kann. Das System deckt ein breites Spektrum an Funktionen ab, einschließlich einer Box-Model-Layout-Engine, einer Cascading-Style-Engine und Data-Binding zur Synchronisierung von Modellen mit Views. Es bietet umfassendes Input-Management für Maus, Tastatur und Touch, neben Internationalisierungsdiensten für die lokalisierte Textübersetzung. Zusätzliche Funktionen umfassen High-DPI-Skalierung, layer-basierte Alpha-Komposition und eine Reihe interaktiver Komponenten wie Range-Slider und Drop-down-Menüs. Der Quellcode kann in WebAssembly-Binärdateien für die Ausführung in Webbrowsern kompiliert werden.
Configures interactive element properties such as cursor styles and drag-and-drop behavior.
This PHP data collection library is a functional data wrapper and array manipulation framework. It converts arrays, JSON strings, and iterables into chainable collection objects designed for advanced filtering, sorting, and transformation. The library is distinguished by its ability to dynamically extend functionality through the registration of custom methods via closures. It also provides specialized capabilities for hierarchical data modeling, allowing flat datasets with parent-child identifiers to be reconstructed into nested tree structures. The toolkit covers a broad surface of data ma
Filters elements by callbacks, regular expressions, key comparisons, or value conditions.
KineticJS is an HTML5 Canvas JavaScript framework and 2D graphics engine. It provides a system for building interactive user interfaces and 2D graphics by managing a scene graph of elements with dedicated rendering and event propagation. The framework functions as a canvas interaction library that adds event handling to canvas-based applications for desktop and mobile devices. It includes a server-side canvas renderer, allowing graphics to be drawn and rendered in a server environment.
Provides a system for building interactive user interfaces and 2D graphics on HTML5 Canvas.
vanilla-tilt.js is a JavaScript 3D tilt library used to animate web elements in 3D space. It functions as an interactive UI animation tool that drives element rotation and scale effects based on mouse movement or mobile device orientation. The library distinguishes itself through the simulation of physical surfaces, utilizing a dynamic light glare effect to create glossy reflections that shift with the cursor. It also includes a parallax depth system that offsets inner elements relative to a parent container to simulate physical layering and three-dimensional space. The toolkit covers a broa
Provides configuration options for how elements reset, scale, or initialize angles during interaction.