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
nomcopter avatar

nomcopter/react-mosaic

0
View on GitHub↗
4,759 stars·244 forks·TypeScript·14 viewsnomcopter.github.io/react-mosaic↗

React Mosaic

react-mosaic is a React tiling window manager used to organize components into a resizable grid of windows and tabbed containers. It provides a layout system featuring resizable split panes and a draggable window orchestrator for arranging content into nested rows and columns.

The system includes a serializable layout engine that converts window arrangements into JSON, enabling the persistence and restoration of workspace configurations across sessions. It supports a tabbed workspace interface where multiple panels are grouped into single areas with switchable headers.

The project covers comprehensive layout management through programmatic control and automated tiling, including drag-and-drop rearrangement and window order rebalancing. It also provides UI customization options for window toolbars, tab headers, and empty state rendering.

Features

  • Tiling Window Managers - Organizes React components into a resizable grid of tiling windows and tabbed containers.
  • Tiling Layout Engines - Implements a tiling layout engine that organizes components into a resizable grid of rows and columns.
  • Layout Tree Manipulations - Provides a controlled state interface to programmatically manage the layout tree for features like undo/redo.
  • Tiling Panel Arrangement - Organizes complex components across a view by dragging and resizing layout panels to define position and size.
  • Binary Tree Layout Engines - Implements a tiling system that partitions the display into rectangular regions using a binary tree layout engine.
  • Tiling Drag-and-Drop Rearrangement - Allows moving windows between positions in the tiled view by calculating and generating layout tree updates.
  • Window Resizing - Adjusts the dimensions of adjacent components by dragging a separator to allocate screen space.
  • Single State Trees - Stores the entire window arrangement in a single serializable state tree for persistence.
  • Layout State Persistence - Serializes the window tree to JSON for saving and restoring workspace configurations across sessions.
  • Workspace Layout Persistence - Saves and restores complex window arrangements by serializing the layout tree into JSON.
  • Layout Serialization Engines - Provides a system for converting complex window arrangements into JSON for workspace restoration.
  • Resizable Panes - Divides screen space into nested rows and columns using draggable separators.
  • Tabbed Containers - Groups multiple panels into a single area with a tab strip to switch between content views via headers.
  • Tabbed Interfaces - Groups multiple components into single screen areas using a tabbed system to switch active views.
  • IDE Layout Frameworks - Provides the structural framework for building IDE-style interfaces with split-panes and tabbed containers.
  • Panel Creation Logic - Ships a configurable function to determine which content identifies as a new panel, including user selection pickers.
  • Tiled Window Wrappers - Wraps content in windows featuring toolbars with controls for splitting, expanding, removing, or replacing tiles.
  • Window Order Rebalancing - Calculates a new balanced tree structure from existing windows to reshuffle them into a clean grid.
  • Window Action Triggers - Implements commands to hide, expand, or remove panels by accessing the window or tree context.
  • Layout State Synchronizers - Provides a controlled state interface to synchronize the internal layout tree with external React state.
  • Hierarchy Mutation Engines - Updates the layout hierarchy by calculating new parent-child relationships based on user drag-and-drop interactions.
  • Dashboard Layouts - Enables the creation of flexible interfaces where panels can be programmatically added, removed, or resized.
  • Recursive Components - Uses recursive components to traverse and render the tiling layout tree into nested split-panes and tab groups.
  • Tab Lifecycle Management - Provides programmatic control over tab close buttons to implement pinned, protected, or closable panels.
  • Tree-Based Window Orchestrators - Provides a manager for rearranging component positions within a hierarchical tree via drag and drop.

Star history

Star history chart for nomcopter/react-mosaicStar history chart for nomcopter/react-mosaic

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 nomcopter/react-mosaic do?

react-mosaic is a React tiling window manager used to organize components into a resizable grid of windows and tabbed containers. It provides a layout system featuring resizable split panes and a draggable window orchestrator for arranging content into nested rows and columns.

What are the main features of nomcopter/react-mosaic?

The main features of nomcopter/react-mosaic are: Tiling Window Managers, Tiling Layout Engines, Layout Tree Manipulations, Tiling Panel Arrangement, Binary Tree Layout Engines, Tiling Drag-and-Drop Rearrangement, Window Resizing, Single State Trees.

Which projects share features with nomcopter/react-mosaic?

Projects with overlapping indexed features include: longbridge/gpui-component — gpui-component is a native desktop UI kit and component library built for the GPUI framework. It provides a collection… layui/layer — This project is a JavaScript UI component library and frontend utility toolkit. It serves as a web modal framework and… asmvik/yabai — Yabai is a system-level utility for macOS that provides automated window management and workspace organization. It… angular-ui/bootstrap — This project is a collection of native directives designed to implement the Bootstrap component framework within… golden-layout/golden-layout — Golden Layout is a framework-agnostic UI container and web window layout manager designed to organize application… ekmas/neobrutalism-components — This project is a neobrutalist UI component library and accessible design system for React. It provides a collection…

Projects sharing features with React Mosaic

These projects share indexed features with React Mosaic. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • longbridge/gpui-componentlongbridge avatar

    longbridge/gpui-component

    11,793View on GitHub↗

    gpui-component is a native desktop UI kit and component library built for the GPUI framework. It provides a collection of reusable user interface elements, a desktop layout engine for organizing application space, and a specialized data visualization library for rendering quantitative information. The project is distinguished by its high-performance rendering systems, including a virtualized data grid and list system designed to handle large datasets with low memory overhead. It also features a comprehensive data visualization toolkit for rendering charts, axes, and coordinate scales using li

    Rustdesktop-applicationgpuirust
    View on GitHub↗11,793
  • layui/layerlayui avatar

    layui/layer

    8,196View on GitHub↗

    This project is a JavaScript UI component library and frontend utility toolkit. It serves as a web modal framework and popup library, providing a specialized system for rendering interactive dialogs, overlays, and layered interfaces over web page content. The library is distinguished by its comprehensive set of overlay tools, including alert dialogs, confirmation prompts, and the ability to embed external content via iframes. It also features a responsive twelve-column grid system for cross-device layout compatibility and an internal modular dependency management system for on-demand loading

    JavaScriptalertconfirmdialog
    View on GitHub↗8,196
  • asmvik/yabaiasmvik avatar

    asmvik/yabai

    29,093View on GitHub↗

    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

    C
    View on GitHub↗29,093
  • angular-ui/bootstrapangular-ui avatar

    angular-ui/bootstrap

    14,206View on GitHub↗

    This project is a collection of native directives designed to implement the Bootstrap component framework within Angular applications. It provides a suite of modular interface elements that allow developers to build interactive web components without requiring external JavaScript dependencies. The library distinguishes itself by using a dependency-free logic layer that relies entirely on native framework primitives. It features a specialized service-based positioning engine to manage the placement of floating overlays and an event-driven system to coordinate the lifecycle of complex UI elemen

    JavaScript
    View on GitHub↗14,206
Compare all 30 related projects→