35 repositorios
Tools and DSLs for constructing user interfaces and managing constraints.
Explore 35 awesome GitHub repositories matching part of an awesome list · Layout Frameworks. Refine with filters or upvote what's useful.
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
Swift-native DSL for Auto Layout.
Yoga is an embeddable UI layout library and engine that implements the flexible box model used in web standards. It functions as a cross-platform tool for computing user interface geometry, calculating element sizes and positions without relying on a specific operating system's rendering. The engine provides a portable C++ core to ensure identical layout calculations across Android, iOS, and the web. It utilizes an abstract node interface to separate the layout logic from the host UI framework, allowing it to be integrated into native applications. The system manages interface rendering thro
Core layout engine implementing the Flexbox specification.
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
Chainable and expressive syntax for Auto Layout constraints.
UITableView-FDTemplateLayoutCell is a specialized table view cell component for iOS designed to automatically calculate and manage dynamic row heights based on content constraints. It provides a programmatic implementation for determining cell dimensions using auto layout to ensure content fits without requiring manual height overrides. The project utilizes a template-cell sizing mechanism that employs a hidden cell instance to calculate dimensions without triggering the actual table view rendering process. To maintain scrolling performance in long lists, it includes a caching system that sto
Automatic height calculation for table view cells.
Flexboxgrid is a responsive CSS framework and layout engine based on CSS3 standards. It provides a grid system that uses the flexbox model to arrange page elements into flexible, proportional grids that adapt to different screen sizes and device resolutions. The framework implements a float-free responsive design, utilizing a media-query breakpoint system to adjust layouts and column counts based on viewport width. It employs percentage-based column sizing and negative-margin guttering to maintain consistent spacing and fluid scaling across various displays. The system maps layout configurat
A responsive grid system based on flexbox.
PureLayout is a declarative layout framework and Auto Layout wrapper library used for positioning views and managing constraints in iOS and macOS applications. It provides a programmatic engine for building user interfaces through constrained-based positioning and priority levels. The framework utilizes a fluent-interface API design and wrapper-based abstractions to simplify the definition of layout constraints. It features deferred and batch constraint activation to group multiple rules together for simultaneous application to the view hierarchy. The project covers general Auto Layout manag
Simple and powerful API for Auto Layout constraints.
Cartography is a declarative layout engine and constraint management framework for Swift. It provides a domain-specific language to define, group, and prioritize user interface layout rules, abstracting the process of positioning and aligning visual components. The framework distinguishes itself through a fluent API and the use of overloaded operators to define relationships between view attributes. It enables the bundling of multiple layout rules into single units, allowing for the dynamic swapping of constraint groups at runtime to transition views between different positional states. The
Declarative DSL for managing Auto Layout constraints.
Neon es un framework de diseño de UI programático para Swift que orquesta elementos de interfaz a través de un motor de posicionamiento relativo. Calcula los tamaños y posiciones de las vistas en tiempo de ejecución para crear interfaces de usuario responsivas sin usar constraints, springs, struts o lenguaje de formato visual. El sistema organiza los elementos en pilas y grupos utilizando un orquestador basado en coordenadas que resuelve las reglas de alineación entre componentes hermanos y padres. Utiliza un enfoque de mapeo de coordenadas basado en reglas para traducir descriptores de alineación de alto nivel en coordenadas de pantalla absolutas. El framework proporciona capacidades para el anclaje a supervistas, relleno de espacio en contenedores y cálculos dinámicos de tamaño (size-to-fit). Además, admite la alineación relativa de vistas y la organización de elementos hermanos en pilas horizontales o verticales alineadas a bordes, esquinas o centros.
Programmatic UI layout framework for Swift.
MyLinearLayout es un framework de diseño de UI en Objective-C y un motor de diseño responsivo para iOS. Sirve como un orquestador de vistas multipatrón que organiza los elementos de la interfaz utilizando una combinación de patrones de diseño lineal, relativo y de cuadrícula. La biblioteca aporta el comportamiento de flexbox de CSS y elementos flotantes a las vistas de iOS para la distribución dinámica del espacio. Incluye un sistema dedicado para orientaciones de lenguaje de derecha a izquierda (RTL), proporcionando el reflejo automático de los elementos de la interfaz para admitir diseños localizados. El framework cubre una amplia gama de estrategias de disposición, incluyendo el ajuste de elementos basado en flujo, el apilamiento de vistas basado en marcos y la organización en tablas y cuadrículas. También admite disposiciones orgánicas mediante la alineación de vistas basada en rutas y proporciona clases de tamaño adaptativas para ajustarse a diferentes tamaños y orientaciones de pantalla de dispositivos.
Powerful UI framework supporting various layout paradigms.
Bond es un framework de enlace de datos para Swift diseñado para sincronizar modelos de datos y elementos de interfaz de usuario a través de flujos de valores unidireccionales y bidireccionales. Funciona como una suite reactiva para monitorear cambios en colecciones, transformar flujos de datos y conectar eventos de interfaz de usuario con modelos de datos. El proyecto proporciona un puente reactivo que transforma las interacciones de la interfaz de usuario y las llamadas a métodos de delegados de protocolo en señales observables. Incluye un observador de colecciones para monitorear cambios en arrays y un procesador de flujo de datos funcional que aplica operadores para modificar o combinar valores antes de que lleguen a un elemento de interfaz de destino. El framework cubre amplias áreas de capacidad, incluyendo la sincronización a nivel de propiedad, enlace automatizado de fuentes de datos para vistas de tabla y colección, y la conversión de invocaciones de métodos de delegados en eventos de señal asíncronos.
Type-safe binding framework for reactive UI updates.
TinyConstraints es un motor de diseño de UI declarativo y framework de posicionamiento basado en restricciones diseñado para simplificar la definición de restricciones de vista, relaciones espaciales y dimensiones de elementos. Funciona como una librería wrapper de auto layout que permite el posicionamiento de elementos a través de anclas relacionales y reglas de dimensionamiento basadas en prioridad. El sistema permite un diseño de interfaz adaptativo al admitir el apilamiento de vistas personalizado en secuencias horizontales o verticales y el uso de offsets para una alineación de bordes y centrado precisos. Además, admite animaciones de interfaz dinámicas actualizando las restricciones de diseño y los valores constantes para transicionar entre diferentes estados de vista. El framework cubre capacidades de gestión de diseño más amplias, incluyendo la definición de dimensiones de vista, la relación de anclas de vista y la gestión de estados de restricción para activar actualizaciones visuales.
Syntactic sugar for cleaner Auto Layout code.
:leaves: Concise Autolayout code
Elegant and readable view layout library.
Fast Swift Views layouting without auto layout. No magic, pure code, full control and blazing fast. Concise syntax, intuitive, readable & chainable. iOS/macOS/tvOS/CALayer
High-performance manual layout engine without Auto Layout.
A declarative UI framework for iOS
Declarative framework for building user interfaces.
FlexLayout adds a nice Swift interface to the highly optimized facebook/yoga flexbox implementation. Concise, intuitive & chainable syntax.
Chainable syntax wrapper for the flexbox layout engine.
The most powerful Grid container missed in SwiftUI
Powerful grid container for SwiftUI layouts.
Auto Layout made easy
Simplified syntax for managing Auto Layout.
UIView category which makes it easy to create layout constraints in code
Category for creating layout constraints in code.
Flexbox in Swift, using Facebook's css-layout.
Flexbox implementation for Swift.
Programmatic view layout for the rest of us.
Programmatic alternative to standard Auto Layout.