79 repositorios
Layout systems that calculate component geometry based on dynamic hierarchical constraints.
Distinguishing note: Focuses on constraint-based resolution rather than static or flexbox-based layout.
Explore 79 awesome GitHub repositories matching user interface & experience · Constraint Layout Engines. Refine with filters or upvote what's useful.
Slate is a customizable rich text editor framework that treats documents as a recursive tree of nodes. It functions as a schema-based, state-driven system designed to enforce structural constraints and manage nested components within a structured document model. The framework utilizes a plugin-based architecture to extend editor functionality, allowing for the injection of custom logic into the rendering and transformation pipeline. It supports real-time collaborative editing by synchronizing document operations across multiple users. The system covers a broad range of capabilities, includin
Restricts where specific types of content can be placed using constraints to ensure a consistent layout.
This project is a curated knowledge base and technical reference for professional web styling. It serves as a comprehensive guide to modern CSS best practices, focusing on techniques that leverage native browser capabilities to create efficient, maintainable, and scalable stylesheets. The collection emphasizes the use of declarative style logic and modern layout engines to replace brittle, imperative approaches. By prioritizing native pseudo-class state management, logical property mapping, and relative unit scaling, the guide demonstrates how to build responsive interfaces that remain consis
Enforces consistent width-to-height proportions on responsive elements to prevent layout shifts.
Yabai is a system-level utility for macOS that provides automated window management and workspace organization. It functions as a tiling window manager that uses binary space partitioning to arrange application windows into grid layouts, bypassing standard desktop constraints through direct interaction with the system window server. The project distinguishes itself by offering granular control over the graphical user interface via a socket-based command interface and event-driven system hooks. This allows for the programmatic manipulation of window states, display configurations, and virtual
Organizes windows into automated grid layouts using recursive binary space partitioning algorithms.
React Grid Layout is a toolkit for building draggable, resizable, and responsive dashboard interfaces. It functions as a coordinate-based grid system that reconciles component positions and dimensions through declarative metadata, allowing developers to manage complex collections of UI elements that users can interact with directly. The library distinguishes itself through an automated packing algorithm that maintains structural integrity by shifting elements to fill gaps and resolving overlaps. It supports responsive design by monitoring container width changes against pre-defined breakpoint
Enforces specific width-to-height ratios on grid items to maintain content proportions during interactive resizing.
GSYVideoPlayer is a versatile video player framework for Android that acts as a multi-engine playback wrapper. It provides a unified playback interface to control different video playback kernels, such as ExoPlayer, IJKplayer, and MediaPlayer, ensuring compatibility across diverse mobile hardware. The framework distinguishes itself through a flexible architecture that allows for core component swapping, enabling the replacement of playback engines, managers, or rendering layers. It includes a dedicated video caching manager for local storage and a customizable media UI component that supports
Provides multiple options for video rendering aspect ratios, such as crop-to-fill and stretch-to-fill.
Ratatui is a terminal rendering engine and library for the Rust language used to build interactive text-based user interfaces. It provides a framework for creating command-line dashboards and visual applications by rendering widgets and layouts directly to a terminal screen. The project utilizes a backend-agnostic interface to decouple UI logic from terminal drivers and employs a constraint-based layout engine to divide screen space into nested rectangular areas. It manages rendering through an immediate-mode drawing loop and a buffer-based system to minimize screen flicker. The library supp
Provides a constraint-based layout engine to recursively divide screen space into nested rectangular areas for widgets.
Ratatui is a Rust framework and cross-platform terminal renderer used to build rich terminal user interfaces. It functions as a toolkit for creating interactive command-line displays, dashboards, and data visualizations. The library employs an immediate mode rendering approach, where the interface is redrawn every frame based on the current application state. It uses a widget-based layout system to compose complex text-based interfaces. The framework includes a rectangle-based layout engine and a backend-agnostic drawing system to decouple UI logic from specific terminal emulators. It furthe
Provides a coordinate-based layout engine that manages screen areas using rectangles and constraints for widget positioning.
SnapKit is a declarative layout library and domain-specific language for managing user interface constraints and view relationships in Swift. It serves as a programmatic framework for positioning and sizing interface elements on iOS and macOS by wrapping native Auto Layout calls in a concise syntax. The library provides a fluent interface that translates high-level descriptive language into imperative layout rules. It differentiates itself through automatic constraint tracking and lifecycle management, allowing for the bulk removal and replacement of positioning rules without manual tracking
Manages the lifecycle and priority of dynamic hierarchical constraints to prevent layout conflicts.
material-dialogs is a Kotlin UI component library that provides a collection of modal dialogs and bottom sheets for Android applications. It is designed to implement user interface elements that follow Material Design standards. The library provides specialized modal interfaces for selecting calendar dates, clock times, and specific color values. It also includes system chooser integrations for selecting files and directories from local storage. Beyond pickers, the library covers a broader range of interaction components including text input dialogs, modal alerts with action buttons, and bot
Uses constraint-based layout engines to ensure Material Design spacing and alignment within dialogs.
LivePortrait is a deep learning framework for portrait animation that transfers facial expressions from a driving video to a static image. It functions as an AI motion retargeting tool, mapping movements between different identities while preserving the unique features of the source portrait. The system includes specialized capabilities for cross-species portrait animation, adapting human-centric models to non-human subjects and animals. It also features a motion template generator that converts driving videos into portable files to accelerate inference and protect the identity of the origina
Automates the cropping and centering of driving videos to focus on the head for better tracking.
Ratatui is a Rust framework for building interactive, stateful terminal user interfaces. It provides a modular architecture that maps application data to visual components, enabling the creation of complex, text-based applications that run directly in the terminal. The library distinguishes itself through an immediate-mode rendering system that utilizes double-buffering to minimize flickering and reduce communication overhead. It employs a constraint-based layout engine to partition screen space into nested segments, allowing for the construction of sophisticated visual hierarchies that remai
Implements a layout engine that partitions screen space into nested segments using dynamic hierarchical constraints.
This is a layout library for Android applications that implements the CSS Flexible Box layout model. It provides a view container and engine that arrange child views by distributing space and aligning content according to a flexible box model. The framework enables the creation of responsive user interfaces that automatically adjust element positioning, wrapping, and growth based on available screen dimensions and orientations. The system includes capabilities for adaptive layout workflows, dynamic element alignment, and a virtualized rendering system for recycling views to display large dat
Implements a layout system that calculates component geometry based on dynamic hierarchical constraints following flexbox rules.
Masonry is a declarative UI layout engine and domain-specific language for defining layout constraints on iOS and macOS. It serves as a wrapper for native Apple layout constraints, providing a system for positioning views on a screen by declaring rules and priorities. The library implements a fluent interface that uses chainable method calls to define complex screen layouts. This approach replaces native configuration calls with an expressive syntax for generating layout rules. The engine includes capabilities for managing constraint priorities to resolve layout conflicts and tools for updat
Offers a fluent API for defining complex screen layouts using a chain of commands.
This project is an LLM-powered presentation generator and HTML slide deck framework designed to produce single-file presentations. It combines an AI-driven generation system with a playback engine that utilizes WebGL-accelerated rendering for high-performance visual storytelling. The system is distinguished by its focus on design system enforcement, utilizing a validator to ensure layouts adhere to specific typographic and structural rules. It includes a specialized AI visual asset pipeline that generates context-aware imagery and transforms raw screenshots into polished assets through progra
Ensures a seamless fit within slide containers by enforcing specific width-to-height proportions on visuals.
Amethyst is a tiling window manager for macOS designed to automate the arrangement of application windows. It functions as a productivity utility that organizes windows into non-overlapping layouts, allowing users to manage their desktop environment through keyboard-driven controls rather than manual mouse interaction. The application distinguishes itself by providing a state-machine engine that calculates window geometry based on user-defined tiling patterns. It maintains an accurate representation of the desktop by monitoring system-level notifications for window events, enabling it to auto
Calculates window geometry using tiling algorithms to determine final frame positions.
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
Supports a declarative set of positional rules for arranging UI elements relative to each other.
QuestPDF is a C# PDF generation library and layout engine used to create structured documents, reports, and invoices. It utilizes a fluent API and a component-based layout approach to convert code into high-fidelity PDF and XPS files. The library distinguishes itself with a dedicated layout debugger that provides real-time previews, hot-reload capabilities, and visual boundary tools to map rendered elements back to source code. It also functions as an accessibility tool, providing semantic tagging and navigational aids to ensure documents comply with international accessibility and archival s
Enforces specific width-to-height proportions on elements to ensure content scales proportionally.
Cropper.js is a JavaScript image cropping library and client-side image editor. It provides a front-end interface for manipulating image geometry and extracting specific regions using the HTML5 Canvas API. The library enables interactive image cropping where users can manually select areas and define clipping regions. It supports geometry transformations including rotation, scaling, and zooming to align subjects, and allows for the enforcement of dynamic aspect ratios. The tool provides capabilities for exporting crop data as coordinates or canvas representations and offers access to interna
Enforces specific width-to-height proportions on the cropping area to ensure consistent image dimensions.
AsyncDisplayKit is an asynchronous UI framework and performance library for iOS. It provides a collection of performant alternatives to standard views, allowing developers to build responsive interfaces by offloading layout and rendering tasks to background threads. The framework is centered around a declarative layout engine based on a flexbox model, which calculates element positions and sizes asynchronously. It utilizes a node-based abstraction to wrap native views, enabling the instantiation and configuration of UI hierarchies on background threads to prevent main thread blocking. The sy
Scales components based on a fixed ratio relative to the available width or height.
This project is a configuration suite for the Hyprland Wayland compositor, providing a set of automated scripts and files to deploy a consistent desktop environment across Linux distributions. It functions as an automation tool that synchronizes system settings, software packages, and interface themes to ensure a uniform workspace state. The environment distinguishes itself through deep integration with language models, allowing users to access local or cloud-based AI assistants directly from the desktop interface for tasks such as text translation and content generation. Visual consistency i
Manages window geometry and spatial organization using a tiling layout engine.