42 Repos
Systems for placing layout elements using horizontal and vertical grid coordinates.
Distinct from Cell Coordinate Mapping: Candidates refer to data mapping in spreadsheets or resizing behavior, not the basic coordinate system for UI element placement.
Explore 42 awesome GitHub repositories matching user interface & experience · Coordinate-Based Positioning. Refine with filters or upvote what's useful.
Spectacle is a keyboard-driven window manager and organizer that uses system accessibility frameworks to manipulate window coordinates and dimensions. It allows for the arrangement, resizing, and movement of application windows across multiple displays using global keyboard shortcuts. The tool focuses on multi-monitor layout management, enabling users to shift active windows between connected displays and snap windows into predefined screen regions such as halves, thirds, or corners. It also provides the ability to center and maximize windows to optimize screen real estate without using a mou
Allows windows to be quickly snapped into predefined screen regions like halves, thirds, or corners.
interact.js ist eine JavaScript-Interaktionsbibliothek, die verwendet wird, um Drag-and-Drop, Größenänderung und Multi-Touch-Gesten in Webbrowsern zu implementieren. Sie bietet ein spezialisiertes Interaktions-Framework für skalierbare Vektorgrafiken, das es ermöglicht, diese Elemente zu verschieben und in der Größe zu ändern. Die Bibliothek verfügt über eine Multi-Touch-Gesten-Engine, die komplexe Muster wie Pinch und Rotate erkennt, sowie eine Koordinaten-Snapping-Engine zum Ausrichten von Elementen an Rastern oder zum Einschränken von Bewegungen innerhalb von Grenzen. Sie enthält zudem einen Cross-Frame-Zustandssynchronisierer, um Interaktionszustände und Eingabeereignisse über mehrere Browserfenster oder eingebettete Frames hinweg zu teilen. Das Projekt deckt breite Fähigkeitsbereiche ab, einschließlich Bewegungsphysik für trägheitsbasierte Geschwindigkeitsberechnungen und Eingabenormalisierung zur Vereinheitlichung von Maus- und Touch-Ereignissen über Browser hinweg. Zusätzliche Funktionen umfassen die koordinatenbasierte Zustandsverfolgung und quantisiertes Snapping, um Positionen und Größen an vordefinierte Intervalle anzupassen.
Rounds raw interaction coordinates to predefined intervals to ensure precise alignment of UI components.
pdfmake is a JavaScript PDF generation library and declarative document engine that transforms structured JavaScript objects into formatted PDF files. It functions as a layout engine capable of producing documents on both the client side within a web browser and on the server side using Node.js. The library utilizes a declarative approach to translate object-based document definitions into final PDFs. It distinguishes itself through a virtual layout engine that calculates element positions and page breaks and an inheritance-based style system that uses dictionaries to maintain visual consiste
Implements precise positioning of text and graphics using an absolute X-Y coordinate system.
LogicFlow is an SVG-based flowchart editing framework and visual graph editor used for building customizable business process diagrams. It serves as a customizable diagramming engine for rendering business process models, entity relationship diagrams, and unified modeling language charts. The system is characterized by a plugin-based architecture that allows developers to define specialized graphical elements and register pluggable modules. A distinctive feature is its overlay system, which positions standard HTML components on top of the SVG canvas to create interactive menus and control pan
Implements a coordinate-based system to track and manage the absolute screen positions of diagram elements.
react-draggable is a drag and drop library and coordinate-based position manager for React. It functions as a component wrapper that adds draggable behavior to user interface elements, enabling them to be moved via mouse or touch interactions. The library provides touch-enabled interaction tools that unify pointer events across desktop browsers and touch screen devices. It utilizes CSS transforms to handle element movement and coordinate tracking. The system covers movement constraints such as axis restriction and boundary clamping to confine elements within specific areas. It includes posit
Manages the spatial positioning of elements using a coordinate system with snapping and boundaries.
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
Defines the horizontal and vertical coordinates of a cell to place it accurately within the layout.
react-big-calendar is a React calendar component used to build scheduling interfaces for web applications. It provides layouts for displaying events in daily, weekly, and monthly views, acting as a customizable UI component for managing appointments and schedules. The project includes a resource scheduling grid for tracking multiple events across different entities and a drag and drop scheduler that allows users to move and resize events through pointer-based interactions. The interface supports localized date scheduling and date formatting localization. Visual appearance is managed through
Implements a coordinate system to calculate pixel offsets for positioning events based on time intervals.
react-big-calendar is a React calendar component used for rendering schedules and time-based events within web applications. It functions as a customizable event scheduler and JavaScript date visualization library that maps scheduled activities to a time-grid layout. The project is a date-agnostic scheduling interface, utilizing a pluggable adapter to support various third-party JavaScript date libraries. It allows for the replacement of internal calendar elements with custom React components and employs SASS variables for visual styling. The library covers interactive event scheduling and t
Uses a coordinate-based system to precisely position and dimension events within a time-grid layout.
Slideout is a touch-gesture UI component and navigation menu designed for mobile web applications. It provides a side panel that slides across the screen to reveal navigation options, utilizing CSS transitions to animate the movement of the viewport. The component manages the expanded or collapsed state of the navigation menu and includes logic to restrict gestures for specific interface elements to prevent interaction conflicts. It employs a system for executing custom logic triggered by menu state transitions and user drag gestures.
Uses coordinate-based distance tracking to determine whether to snap the menu open or closed.
DeskPad is a macOS virtual display manager and window management utility designed to isolate and share specific screen content. It creates software-defined monitors at the operating system level to provide a dedicated drawing surface for mirroring content to an audience without exposing the primary workspace. The tool employs cursor location tracking to automate window focus, automatically bringing application windows to the front when the mouse enters the virtual display area. It allows for the creation and resizing of virtual monitors through system-level preferences to ensure shared conten
Implements automated window foregrounding based on cursor position relative to virtual display boundaries.
react-data-grid is a high-performance tabular interface for rendering and manipulating large datasets within a React application. It functions as a virtualized data table and editable spreadsheet component that supports hierarchical data grids with expandable and collapsible row groupings. The component maintains performance with massive datasets by rendering only the rows and columns currently visible in the viewport. It provides spreadsheet-like data manipulation, including cell editing and the ability to copy, paste, or drag values between cells. The grid supports advanced layout capabili
Implements a coordinate-based system for calculating precise cell positions and dimensions using row and column metrics.
Walk is a comprehensive framework for building native Windows desktop applications. It functions as a GUI library and Windows API wrapper, providing a toolkit of native widgets and a declarative layout system for developing high-performance user interfaces. The project is distinguished by its data-binding framework, which uses reflection and string-based property paths to synchronize data sources with interface widgets. It also provides specialized support for high-DPI interface scaling and an optimized native message loop to reduce runtime overhead. The toolkit covers a wide range of capabi
Implements a coordinate-based system using X and Y integers to position elements on the screen.
Nannou is a creative coding framework for Rust designed for building interactive visual and audio sketches. It provides a loop-based API with hardware-accelerated 2D and 3D rendering, serving as a toolkit for generative art production and multimedia installation design. The framework is distinguished by its comprehensive hardware communication interface, which bridges software with physical devices via MIDI, OSC, DMX, serial, and laser DAC protocols. It also includes specialized projection mapping tools for warping visual output to fit non-standard physical surfaces and a dedicated GPU shader
The project places new windows at calculated screen coordinates without manual layout.
Golden Layout is a framework-agnostic UI container and web window layout manager designed to organize application interfaces into a flexible grid of draggable and resizable multi-pane windows. It functions as a hierarchical grid system that arranges page elements into a tree of nested rows and columns to create complex professional interfaces. The system acts as a multi-window workspace orchestrator, allowing components to be detached from the main layout into independent native browser windows. It also serves as a serializable layout engine that captures the arrangement of user interface com
Implements logic for positioning layout elements based on spatial rules and coordinates within a layout tree.
X6 is a JavaScript diagramming library and SVG graph rendering engine used to build interactive flowcharts, mind maps, and visual workflow editors. It provides a framework for defining customizable node and edge behaviors, utilizing a hybrid rendering approach that combines SVG and HTML. The library decouples the visual graph representation from underlying business logic and data structures through a dedicated state management system. It allows for extensive extensibility via a registration mechanism for custom nodes, edges, and canvas tools. The toolkit includes capabilities for automatic g
Maintains a mathematical representation of positions and sizes to calculate element placement and collision.
Google map library for react that allows rendering components as markers :tada:
Converts geographic coordinates to pixel offsets for precise overlay placement on the map.
Winbox is a browser-based windowing system and JavaScript library for creating draggable and resizable floating windows within a web interface. It functions as a floating window framework that enables the development of desktop-like experiences using a configurable viewport and coordinate system. The system allows for the rendering of various content types, including raw HTML, existing DOM elements, and remote URLs loaded via iframes. It provides extensive UI customization through custom window layout templates, visual theme application via CSS classes, and the addition of custom controls to
Sets initial coordinates and viewport boundaries to restrict movement or create custom split-screen grids.
Snap.js is a JavaScript library for building draggable side navigation panels on touch devices. It enables slide-in menus from the left or right screen edge, driven by a gesture-based state machine that interprets drag and flick gestures to open and close the panel. The library distinguishes horizontal menu drags from vertical scrolling by analyzing the initial touch movement angle, and locks menu movement to a single axis to prevent interference. It uses hardware-accelerated CSS transforms for smooth animations and provides configurable snap thresholds that determine whether a drag should op
Uses configurable pixel thresholds to decide whether a drag should snap the menu open or closed.
Regulex is a tool that parses regular expressions into interactive syntax diagrams, rendering them directly on an HTML canvas. It converts a regex string into an abstract syntax tree and visualizes the structure as a navigable diagram, making the internal logic of a regular expression visually accessible. Beyond basic visualization, Regulex provides syntax validation that detects and reports precise errors, including invalid back references and octal escapes. It also offers a state-machine visualization mode that maps regex AST nodes to NFA-like states and transitions, rendered as a directed
Draws interactive syntax diagrams by computing node positions and rendering paths onto an HTML canvas.
i3 ist ein X11-Tiling-Window-Manager für Linux, der Anwendungsfenster in einem nicht überlappenden Raster organisiert, um den Bildschirmplatz zu maximieren. Er fungiert als konfigurierbare Fenster-Layout-Engine und Desktop-Umgebungskomponente, die mit dem X Window System interagiert, um Fensterplatzierung und Eingabeereignisse zu verarbeiten. Der Manager bietet spezifisch die Möglichkeit, konfigurierbare visuelle Abstände und Lücken zwischen Fenstern und Bildschirmrändern hinzuzufügen. Er bestimmt Fensterrahmen und Abstände durch das Parsen einer Textkonfigurationsdatei beim Start oder zur Laufzeit. Das System deckt die Optimierung von Arbeitsbereich-Layouts und Interface-Design ab, einschließlich der Möglichkeit, die Rahmen-Sichtbarkeit für einzelne Fenster zu automatisieren und Statusleisten-Dimensionen basierend auf aktiven Schriftgrößen zu berechnen.
Uses a grid-based coordinate system to calculate window positions and sizes for non-overlapping tiling.