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
golden-layout avatar

golden-layout/golden-layout

0
View on GitHub↗
6,689 stars·557 forks·JavaScript·MIT·36 viewsgolden-layout.github.io/golden-layout↗

Golden 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 components as data to enable workspace persistence.

The project provides capabilities for drag-and-drop grid management, fractional dimension scaling, and factory-based component registration. It includes mechanisms for synchronizing state across detached windows and binding external JavaScript framework components through event-driven lifecycles and virtual containers.

Features

  • Multi-Window Layout Managers - Provides a comprehensive system for managing and synchronizing UI panels across multiple native browser windows.
  • Tree-Based Window Layouts - Organizes screen space using a hierarchical tree of nested rows and columns to create complex multi-pane interfaces.
  • Cross-Window Messaging - Synchronizes state and communication between detached browser windows and the main layout via a shared event broadcasting system.
  • Detachable Browser Windows - Allows web application components to be popped out into separate native browser windows for multitasking.
  • Cross-Framework Component Embedding - Provides mechanisms to embed components from various JavaScript frameworks into a unified layout using virtual containers.
  • Drag-and-Drop Layout Engines - Ships a layout engine that calculates component positioning and hierarchy via visual drag-and-drop interactions.
  • Dynamic Layout Engines - Provides a dynamic layout engine that allows adding and modifying components at runtime based on application logic.
  • Container Indexing Logic - Determines the precise placement of new elements within the layout tree based on predefined spatial rules.
  • Framework-Agnostic UI Development - Provides a layout system that operates independently of any specific JavaScript framework by using virtual containers.
  • Grid Layout Management - Coordinates the overall arrangement and recalculation of grid items to enable a customizable workspace.
  • Nested Grid Structures - Supports nesting grid containers within other cells to create a hierarchical tree of rows and columns.
  • Hierarchical Layout Grids - Arranges page elements into a tree of nested rows and columns to create complex professional interfaces.
  • Layout State Persistence - Saves and restores the spatial configuration and dimensions of UI elements to maintain the workspace.
  • User-Defined Layouts - Enables end-users to customize and save the spatial arrangement of interface elements across sessions.
  • Layout State Serialization - Converts spatial layout configurations into serializable data formats for efficient workspace persistence.
  • Layout State Serializations - Captures the structural arrangement of components as a serializable data object to enable workspace persistence.
  • Native Window Detachment - Allows specific components to be popped out from the main layout into independent native browser windows.
  • Application State Persistences - Saves and restores the exact arrangement and dimensions of a multi-pane user interface across different sessions.
  • UI Component Lifecycle Bindings - Triggers specific hooks during the lifecycle of embedded components to ensure proper integration with the layout manager.
  • UI Framework Lifecycle Bindings - Binds layout components to external lifecycles using event-based embedding to align behavior with external state.
  • Dynamic UI Element Instantiation - Uses factory-based mapping to dynamically generate and inject framework-agnostic UI elements into layout containers.
  • Factory Function Registries - Allows mapping specific component types to factory functions for dynamic user interface element instantiation.
  • Component Factories - Implements a factory pattern to dynamically instantiate and inject UI components into the layout hierarchy.
  • Component Instance Lifecycles - Provides mechanisms to listen for events before a component is released to ensure proper resource disposal and memory cleanup.
  • Component State Serialization - Tracks and requests current component states during saving to ensure accurate restoration of user sessions.
  • Coordinate-Based Positioning - Implements logic for positioning layout elements based on spatial rules and coordinates within a layout tree.
  • Dimension Definitions - Defines element sizes using percentages or fixed points to control space distribution across primary and cross axes.
  • Lifecycle Event Handlers - Triggers custom event handlers to manage the allocation and teardown of components for manual lifecycle control.
  • Grid Dimension Adjustments - Provides capabilities for modifying row heights and column widths within the grid-based layout.
  • Dashboard Layouts - Enables the creation of user interfaces where components can be rearranged and resized via drag-and-drop.
  • Layout Configuration Serializations - Saves and restores the arrangement of user interface components as serializable data for workspace persistence.
  • Proxy Container Rendering - Wraps embedded content in proxy elements to manage dimensions and positioning without manipulating the child component's internal DOM.
  • Fractional Layout Units - Controls space distribution by defining layout item widths and heights using fractional or percentage units.

Star history

Star history chart for golden-layout/golden-layoutStar history chart for golden-layout/golden-layout

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. 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 golden-layout/golden-layout do?

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.

What are the main features of golden-layout/golden-layout?

The main features of golden-layout/golden-layout are: Multi-Window Layout Managers, Tree-Based Window Layouts, Cross-Window Messaging, Detachable Browser Windows, Cross-Framework Component Embedding, Drag-and-Drop Layout Engines, Dynamic Layout Engines, Container Indexing Logic.

Which projects share features with golden-layout/golden-layout?

Projects with overlapping indexed features include: mathuo/dockview — Dockview is a UI framework for building complex, desktop-like interfaces featuring dockable layout components,… gridstack/gridstack.js — gridstack.js is a JavaScript grid layout library and responsive dashboard framework used to create interactive… whatwg/html — This repository contains the HTML specification, which defines the core standards for web page structuring, content… pop-os/shell — This project is an automatic tiling window manager and a GNOME desktop interface extension. It functions as a… strml/react-grid-layout — React Grid Layout is a draggable and resizable grid system for React that organizes components into a coordinate-based… nomcopter/react-mosaic — react-mosaic is a React tiling window manager used to organize components into a resizable grid of windows and tabbed…

Projects sharing features with Golden Layout

These projects share indexed features with Golden Layout. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • mathuo/dockviewmathuo avatar

    mathuo/dockview

    3,023View on GitHub↗

    Dockview is a UI framework for building complex, desktop-like interfaces featuring dockable layout components, interactive tab grouping, and a cross-platform panel system. It provides the tools necessary to create environments with draggable tabs, split-views, and customizable panel arrangements. The system is distinguished by its multi-window layout manager, which allows panels to be detached into separate browser windows for multi-monitor setups. It further supports a state-persistent architecture that saves and restores the exact position and configuration of views across different user se

    TypeScriptangulardockdocking
    View on GitHub↗3,023
  • gridstack/gridstack.jsgridstack avatar

    gridstack/gridstack.js

    8,972View on GitHub↗

    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

    TypeScriptangulardashboardgrid
    View on GitHub↗8,972
  • whatwg/htmlwhatwg avatar

    whatwg/html

    9,163View on GitHub↗

    This repository contains the HTML specification, which defines the core standards for web page structuring, content organization, and document rendering. It establishes the fundamental algorithms for state-machine-based tokenization, tree construction for the document object model, and origin-based security isolation. The specification provides a framework for defining custom elements with independent lifecycles and registries. It also details the requirements for cross-document communication, session history management, and the synchronization of interface properties with content attributes.

    HTMLcanvaseventsourcehtml
    View on GitHub↗9,163
  • pop-os/shellpop-os avatar

    pop-os/shell

    5,226View on GitHub↗

    This project is an automatic tiling window manager and a GNOME desktop interface extension. It functions as a keyboard-driven window orchestrator that organizes application windows into non-overlapping grids using a hierarchical tree structure to subdivide and rearrange screen space. The system provides a multi-monitor layout manager that handles window placement across multiple display outputs and automatically re-tiles when monitors are connected or disconnected. It includes a searchable, asynchronous interface for launching applications, system settings, and locating open windows. The sof

    TypeScriptgnome-shell-extensionpop-ostiling
    View on GitHub↗5,226
Compare all 30 related projects→