8 Repos
Fixed vertical or horizontal coordinates where a draggable UI element automatically locks during movement.
Distinct from Non-Rendering Anchor Points: Distinct from non-rendering anchor points which are structural nodes; these are functional magnetic positions for sliding panels.
Explore 8 awesome GitHub repositories matching user interface & experience · Snap Points. Refine with filters or upvote what's useful.
AndroidSlidingUpPanel is an Android custom view component and sliding panel library used to create draggable overlays that slide up from the bottom of an application screen. It functions as a nested scrolling UI framework that coordinates touch events between a draggable panel and its internal scrollable content. The library distinguishes itself through a parallax effect implementation that shifts background content at different speeds than the foreground panel. It supports the definition of intermediate anchor points to create partial-view states and allows for transition physics customizati
Provides magnetic snap points that allow the sliding panel to lock at specific vertical coordinates during movement.
This is a bottom sheet component library for React Native that provides gesture-driven panels sliding up from the bottom of the screen. The library is built around configurable snap points, dynamic sizing, keyboard awareness, modal presentation, and synchronized scrolling, with native driver animation offloaded to the native thread for smooth performance. The library distinguishes itself through deep gesture and animation control, including custom gesture handler overrides, scroll-gesture synchronization, and dynamic snap point recalculation when content size or keyboard visibility changes. I
Moves the bottom sheet between predefined vertical positions with smooth gesture-driven snapping animations.
Vaul is a React drawer component used to create accessible, draggable bottom sheets and slide-up panels. It serves as a mobile-friendly alternative to traditional dialogs and modals by rendering content into a separate DOM node via a portal to avoid layout nesting issues. The library features configurable snap points that allow panels to lock into specific vertical heights during drag gestures. It supports hierarchical UI layering, enabling the use of nested drawers for complex navigation or multi-level menus. The component includes an accessibility layer with ARIA announcements and focus ma
Implements configurable snap points where the panel locks during drag gestures.
LibreCAD is an open-source, cross-platform 2D CAD application for creating and editing precise technical drawings. It functions as a full-featured drawing editor that reads and writes industry-standard DXF and DWG file formats, enabling cross-application compatibility. The software provides tools for creating 2D designs with support for layers, dimensions, and geometric primitives, along with precision features like snapping to endpoints, midpoints, and intersections. It also includes a command-line converter that can export DXF drawings to PDF, SVG, and PNG formats for batch processing or in
Provides precision snapping to endpoints, midpoints, and intersections for accurate drawing placement.
Zag ist eine Headless-UI-Zustandsmaschinenbibliothek, die ungestylte Komponentenlogik bereitstellt, um konsistentes Verhalten über verschiedene Rendering-Engines hinweg sicherzustellen. Sie fungiert als Toolkit zur Modellierung komplexer User-Interface-Interaktionen unter Verwendung von Statecharts und entkoppelt die zugrunde liegende Logik und Accessibility-Attribute vom visuellen Styling. Die Bibliothek ist framework-agnostisch und nutzt spezialisierte Adapter, um ihre Zustandsmaschinenlogik mit verschiedenen JavaScript-Bibliotheken wie React, Solid, Vue und Svelte zu verbinden. Dieser Ansatz ermöglicht es Entwicklern, ein einheitliches Interaktionsmodell beizubehalten, während sie jede CSS- oder Styling-Lösung durch zustandsgesteuerte Datenattribute anwenden können. Zag deckt ein breites Spektrum an funktionalen Bereichen ab, einschließlich umfassendem Accessibility-Management für Tastaturnavigation und ARIA-Attribute sowie eine riesige Sammlung interaktiver Primitiven. Dazu gehören Input-Controls, Navigationselemente wie Menüs und Tabs, Overlay-Komponenten wie Dialoge und Popovers sowie komplexe Medienhandhabung für Bildzuschnitt und Signaturerfassung. Es bietet zudem Utilities für hierarchisches Datenmanagement, asynchrone Listenbehandlung und ein System zur Konstruktion geführter Produkttouren.
Provides logic for defining specific vertical or horizontal coordinates where draggable panels lock.
Keen-slider is a JavaScript touch carousel library and DOM-based slider engine. It provides a framework-independent tool for creating responsive, touch-enabled slide carousels that translate swipe inputs into animated transitions for content galleries. The library focuses on responsive design through the use of breakpoints and media queries to automatically adapt layout and behavior across different screen sizes. It supports native touch and swipe gestures compatible with modern web browsers and mobile devices. Its capability surface includes the implementation of navigation controls, infini
Recalculates total scrollable area and slide offsets programmatically when the window size or configuration changes.
FloatWindow ist eine Android-Bibliothek für die Erstellung von verschiebbaren Overlay-Views, die über verschiedene Anwendungen und Aktivitäten hinweg bestehen bleiben. Sie bietet spezialisierte Komponenten für die Implementierung von Floating Windows, die Verwaltung von systemweiten Overlay-Berechtigungen und die Berechnung von Bildschirmkoordinaten. Das Projekt verfügt über ein Fenster-Animations-Framework, das Snap-to-Edge-Verhalten und benutzerdefinierte Bewegungsanimationen ermöglicht. Es enthält einen Overlay-Berechtigungsmanager, um die für das Zeichnen von Oberflächen über anderen Anwendungen erforderlichen Systemberechtigungen anzufordern und zu überwachen. Das Toolkit deckt die UI-Positionierung mittels absoluter Pixel oder relativer Bildschirmprozentsätze ab, um Konsistenz über verschiedene Geräteauflösungen hinweg zu gewährleisten. Zudem bietet es Mechanismen zur Sichtbarkeitssteuerung, um Overlays basierend auf spezifischen Aktivitäten oder Hintergrundzustandsänderungen zu filtern, sowie eine Zustandsüberwachung für Echtzeit-Positions- und Sichtbarkeits-Updates.
Implements interpolated animations that automatically snap floating windows to the screen edges.
Scratch-blocks is a block-based visual programming library and framework used to create graphical programming interfaces. It provides a visual environment that translates interlocking blocks into executable code, serving as a foundation for educational coding interfaces and visual programming languages. The project is implemented as a customized extension of the Google Blockly ecosystem. It enables the development of domain-specific languages through a drag-and-drop interface, supporting the creation of custom block libraries and no-code tool development. The framework handles the structural
Implements constraint-based snapping to ensure programming blocks align correctly during drag-and-drop interactions.