awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
randrew avatar

randrew/layout

0
View on GitHub↗
992 stars·79 forks·C·19 views

Layout

This library is a portable, header-only engine designed for calculating the geometric positions and dimensions of nested rectangular elements. It provides a recursive stacking-box model to determine interface coordinates, serving as a lightweight solution for two-dimensional layout calculations in C99 or C++ environments.

The engine distinguishes itself through its focus on portability and resource efficiency. It utilizes a dependency-free memory abstraction that allows developers to override default allocation and assertion routines, making it suitable for specialized or restricted computing environments where standard library access is limited.

The library supports compile-time configuration to toggle between integer and floating-point coordinate systems. This flexibility allows for precise alignment and rendering adjustments tailored to specific hardware or display requirements. The project is distributed as a single-file header library, facilitating direct integration into existing codebases without external dependencies.

Features

  • Layout Engines - Provides a single-file library for calculating the geometric positions and dimensions of nested rectangular elements using stacking rules.
  • Layout Calculations - Calculates the geometric positions and dimensions of nested rectangular interface elements by applying stacking rules and spatial constraints.
  • C99 UI Layout Libraries - Provides a portable header-only library for computing interface element coordinates that compiles with standard C99 or C++ compilers.
  • Cross-Platform Layout Engines - Calculates consistent two-dimensional interface geometry across different operating systems and rendering backends using a single portable C codebase.
  • Stacking Calculators - Calculates element positions by recursively applying spatial constraints and relative stacking rules to a hierarchy of rectangular containers.
  • Custom Memory Allocators - Allows overriding default memory allocation and assertion routines to ensure compatibility with restricted computing environments.
  • Header-Only C Libraries - Ships as a single-file header library for direct integration into C99 or C++ codebases without external dependencies.
  • Precision-Switched Float Builds - Provides compile-time toggling between integer and floating-point coordinate systems to optimize performance or accuracy for specific hardware.
  • Dependency-Free Architectures - Implements a dependency-free architecture by delegating memory management and assertions to the host environment via function pointers.
  • Embedded UI Toolkits - Builds lightweight graphical interfaces for resource-constrained hardware by calculating element positions without heavy external frameworks.
  • UI Geometry Calculation Tools - Calculates UI geometry with memory-efficient routines suitable for integration into restricted or specialized computing environments.

Star history

Star history chart for randrew/layoutStar history chart for randrew/layout

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does randrew/layout do?

This library is a portable, header-only engine designed for calculating the geometric positions and dimensions of nested rectangular elements. It provides a recursive stacking-box model to determine interface coordinates, serving as a lightweight solution for two-dimensional layout calculations in C99 or C++ environments.

What are the main features of randrew/layout?

The main features of randrew/layout are: Layout Engines, Layout Calculations, C99 UI Layout Libraries, Cross-Platform Layout Engines, Stacking Calculators, Custom Memory Allocators, Header-Only C Libraries, Precision-Switched Float Builds.

What are some open-source alternatives to randrew/layout?

Open-source alternatives to randrew/layout include: react/yoga — Yoga is a cross-platform layout engine and embeddable core that determines the dimensions and offsets of hierarchical… mikke89/rmlui — RmlUi is a cross-platform UI renderer and middleware library that enables the creation of user interfaces using a… facebook/litho — Litho is an Android declarative UI framework and component library used to build user interfaces through a declarative… migueldeicaza/gui.cs — gui.cs is a .NET terminal user interface toolkit and framework used to build interactive, cross-platform text-based… duilib/duilib — Duilib is a Windows UI library and custom rendering engine designed for building high-performance graphical user… xamarin/xamarin.forms — Xamarin.Forms is a cross-platform mobile framework for building native user interfaces using a single shared codebase…

Open-source alternatives to Layout

Similar open-source projects, ranked by how many features they share with Layout.
  • react/yogareact avatar

    react/yoga

    18,790View on GitHub↗

    Yoga is a cross-platform layout engine and embeddable core that determines the dimensions and offsets of hierarchical element trees. It provides a C++ implementation of the Flexbox layout model to calculate element positions and sizes based on web standards, ensuring a uniform appearance across diverse devices and operating systems. The engine is designed for portability via a C API, allowing the layout logic to be integrated into various host languages and platforms. It utilizes an incremental layout system that identifies modified subtrees and recalculates positions only for changed nodes a

    C++
    View on GitHub↗18,790
  • mikke89/rmluimikke89 avatar

    mikke89/RmlUi

    4,178View on GitHub↗

    RmlUi is a cross-platform UI renderer and middleware library that enables the creation of user interfaces using a subset of HTML and CSS. It functions as a rendering-agnostic layer designed to integrate web-standard layout and styling into custom game engines and embedded applications. The framework is distinguished by its integration of Lua for dynamic logic and control, as well as a specialized toolkit for rendering SVG images and Lottie animations. It utilizes a pluggable rendering backend that decouples geometry generation from the final display, allowing it to generate textured geometry

    C++
    View on GitHub↗4,178
  • migueldeicaza/gui.csmigueldeicaza avatar

    migueldeicaza/gui.cs

    11,070View on GitHub↗

    gui.cs is a .NET terminal user interface toolkit and framework used to build interactive, cross-platform text-based applications. It provides a structured system for composing terminal views using a view hierarchy and a dedicated layout engine. The library distinguishes itself through a component-based widget system and a constraint-based layout engine that allows interfaces to remain responsive across different terminal window dimensions. It employs a virtual-screen buffer to minimize flickering during redraws and uses state-driven theme configurations to maintain persistent visual styles.

    C#
    View on GitHub↗11,070
  • duilib/duilibduilib avatar

    duilib/duilib

    5,940View on GitHub↗

    Duilib is a Windows UI library and custom rendering engine designed for building high-performance graphical user interfaces for PC client software. It functions as a DirectUI framework that allows for the creation of bespoke layouts and tailored interface elements without relying on standard operating system controls. The framework implements a direct user interface approach to render custom graphical elements. This allows for the design of non-standard visual layouts for desktop applications, including those that require high-performance rendering for resource-heavy software. The system cov

    C++
    View on GitHub↗5,940
See all 30 alternatives to Layout→

Curated searches featuring Layout

Hand-picked collections where Layout appears.
  • CSS layout adapters