A stacking window-management client for the River Wayland compositor, with policy separated from the compositor that handles display and input. Its commands and configuration can be scripted externally, and its focus is conventional overlapping windows rather than a built-in tiling policy. CoW is a window-management client for River, reflecting River’s separation of compositor and policy.
Wayland compositors
Wayland compositors combine window management with display composition. This collection includes tiling, stacking and scrolling projects: browse their screenshots to see how each presents a desktop, then check the project pages for configuration options and availability.
35 projects
An extensible wlroots-based Wayland compositor with dynamic and floating layouts, Lua scripting and C plugins. Its API and interaction model draw on AwesomeWM, letting users script window behaviour and compose the desktop rather than relying on a fixed configuration alone. CWC draws on AwesomeWM’s API and interaction model.
A Wayland compositor with tiling, stacking and scrolling window-management modes, paired with an integrated Flutter-based shell. It targets laptop and touchpad interaction, while the shell supplies desktop controls around the compositor rather than relying on a collection of unrelated desktop utilities. Denial is built around a Flutter-native compositor and integrated shell.
A small Wayland compositor inspired by suckless’s dwm, built on wlroots and configured by editing C source and rebuilding. It provides a compact tiling and floating session with tags and keyboard controls, leaving many desktop services and visual components to separate programs. The project describes itself as dwm for Wayland, aiming to carry dwm’s philosophy and core functionality to Wayland.
An EFL-based window manager, compositor and desktop shell that provides panels, menus, settings and session components as well as window management. It supports X11 and has Wayland compositor work, with a broad set of built-in modules and graphical configuration for a complete, lightweight desktop. Carsten Haitzler launched Enlightenment in the 1990s as an easy-to-use X11 window manager.
An experimental Wayland compositor derived from dwl and built on wlroots, with a compact C-oriented configuration and tiling workflow. The project is small and its public documentation is limited, so this description sticks to the documented compositor base and design lineage. FjordWM began as a fork of dwl.
A Fluxbox-inspired Wayland stacking compositor for lightweight floating desktops. It carries the familiar emphasis on themes, menus and conventional overlapping windows into a Wayland session while leaving the rest of the desktop environment modular. Fluxland takes its design inspiration from Fluxbox and adapts a lightweight, theme-oriented stacking workflow to Wayland.
elementary OS’s Pantheon window manager and compositor, built around libmutter and integrated with the desktop’s workspaces, gestures and shell components. It can run as an X11 manager or a Wayland compositor, while Pantheon supplies the panels, dock and session interface around it. Gala was designed by elementary for Pantheon and is based on the libmutter window-management library.
Valve’s Wayland micro-compositor for games, used either embedded directly on a display or nested inside a regular desktop. It isolates a game’s display surface to manage resolution, scaling, frame presentation and related gaming workflows without replacing the host desktop session. Gamescope was formerly called steamcompmgr; the project expanded from the embedded SteamOS use case to nested desktop use.
A stacking Wayland compositor for Unix-like systems, with workspaces, sheets and groups for organising windows and a keyboard-oriented control model. Its configuration is read from a text file, and its cwm influence is reflected in the emphasis on compact controls rather than a large desktop shell. Hikari’s author identifies cwm as a strong inspiration for the project.
A Wayland compositor with dynamic tiling and floating windows, per-monitor workspaces, animations and composable visual effects. Current documentation introduces Lua as a configuration interface while retaining support for existing Hyprlang configuration, and its compositor also manages input, outputs and desktop layers. A later milestone added Lua configuration while retaining the established Hyprlang path.
A wlroots-based Wayland tiler with dynamic layouts and configurable workspaces, controlled through a simple configuration file and keyboard bindings. It is a compact compositor for users who want a dwl-like workflow with its own layout and workspace choices. JapokWM describes itself as a compositor based on dwl, adapting that compact wlroots project into its own dynamic tiling Wayland compositor.
A Linux Wayland compositor combining i3-like tiling with support for floating windows and multiple GPUs. Its Rust-based configuration API and rendering backends target users who want a programmable compositor with explicit control over outputs, layouts and session behaviour.
A programmable Wayland compositor built on wlroots that uses Lua scripts to define window-management policy and respond to compositor events. It intentionally provides a small base rather than a fixed desktop model, so users create behaviours such as placement, key handling and rules in Lua.
KDE’s window manager and compositor: it manages X11 windows in Plasma’s X11 session and runs as a Wayland compositor in Wayland sessions. Window rules, keyboard shortcuts, effects, scripts and workspace behaviour are configurable, and KWin can also be used by desktop shells other than Plasma. KDE announced that Plasma 6.8 will remove the X11 session; X11 applications will continue to run through Xwayland.
A wlroots-based Wayland compositor for conventional floating, overlapping windows, with desktop stacking and Xwayland support. Its XML configuration and Openbox 3.6 style conventions make it approachable to Openbox users, while the project keeps the compositor focused rather than supplying a complete desktop shell. Developed as a Wayland compositor inspired by Openbox, including a similar stacking workflow and Openbox-style XML configuration.
A Rust compositor built on Smithay that combines Wayland tiling layouts and tags with a first-party GTK4 desktop shell. Its companion tools provide controls such as settings and application launching, so the project aims to deliver an integrated desktop stack as well as window management. Margo is a Rust and Smithay compositor drawing on dwl and mango’s Wayland tiling lineage.
A tiling Wayland compositor built on Canonical’s Mir, with workspaces, keyboard controls and a plugin interface for extending compositor behaviour. YAML configuration and hot reload support iteration without recompilation, while Mir supplies the underlying display-server framework. Miracle WM was introduced as a tiling Wayland compositor built on Mir.
A Mir-based Wayland compositor and starter shell intended as a foundation for building desktop sessions. It provides a configurable shell and scripts for assembling components such as panels and launchers, so it serves as a desktop starting point rather than a complete, fixed desktop environment. Canonical introduced Miriway as a lightweight shell for testing Mir and composing desktop components.
The Cinnamon desktop’s window manager and compositor, forked from Mutter and adapted to Cinnamon’s shell and settings. It manages stacking windows, workspaces and effects; its source includes both X11 and Wayland-related backends, although Cinnamon’s Wayland session remains a distinct, evolving part of the desktop. Muffin is a fork of Mutter, specifically adapted to serve as the Cinnamon desktop’s window manager.
GNOME’s window manager and compositor library: it manages windows and display composition in X11 sessions and serves as the Wayland compositor for GNOME Shell. It handles focus, workspaces, outputs, input and effects, while the shell supplies the surrounding desktop interface. Mutter’s window-management logic was inherited from Metacity and was developed to serve as the display core for GNOME Shell.
A Wayland tiling compositor aimed at laptop and touchpad use, with animated transitions and workspace-oriented navigation. Python configuration describes the session and can be evaluated to derive settings, giving users a scriptable way to adapt its layouts and interaction model. Its author describes a starting idea of arranging windows across a large two-dimensional wall for laptop and touchpad use.
A Wayland compositor with scrollable tiling: windows form a horizontal strip that can extend beyond the screen, while each monitor has independent workspaces. KDL configuration controls layouts, input, rules and outputs; the design takes cues from PaperWM without depending on GNOME Shell. Niri’s scrollable tiling design was heavily inspired by PaperWM, while its compositor architecture separates it from the GNOME Shell extension model.
A modular Wayland compositor architecture in which plugins can cooperate to provide compositor and window-management behaviour. Its plugin-oriented approach is intended to make components replaceable, rather than bundling one fixed desktop workflow into the compositor. Orbment was designed around modular plugins that cooperate to supply compositor behaviour.
A wlroots-based Wayland compositor developed for the Phosh mobile shell, with support for phone-oriented display and interaction patterns. Phoc handles compositor and window management, while Phosh provides the shell; it can also be run without Phosh for testing or specialised sessions. Phoc was developed as the Wayland compositor for the Phosh mobile shell.
A hackable window manager whose Python configuration defines layouts, groups, key bindings, rules and widgets. It can run as an X11 window manager or as a Wayland compositor, so the same programmable desktop model is available across both display protocols.
A Sway-derived Wayland compositor that retains i3-style commands and configuration while focusing on a horizontally scrolling tiling layout. Windows extend along a strip that users navigate across, providing a PaperWM-like workflow in a standalone compositor. Scroll forked from Sway, removing its other layouts to focus on a PaperWM-like scrolling layout.
An i3-compatible Wayland compositor that brings i3’s container tree, split layouts, workspaces and keyboard workflow to Wayland. It accepts familiar i3-style configuration and commands, and includes the compositor and session pieces needed to manage outputs, input and application windows. Started as an i3-compatible window manager for Wayland, allowing users to carry familiar i3 workflows and configuration to a Wayland session.
A community fork of Sway that keeps its i3-compatible Wayland workflow and adds optional visual effects such as blur, shadows, rounded corners and custom borders. It uses Sway-style configuration and commands, with effect settings extending the compositor’s appearance. A community fork of Sway that adds optional visual effects while retaining Sway’s wlroots and i3-compatible foundations.
Deepin’s Wayland compositor and desktop-shell project, built with wlroots and Qt Quick to integrate window management with DDE components. Its architecture combines the compositor with declarative shell interfaces, making it a desktop platform rather than a standalone tiling manager. Deepin developed Treeland as a Wayland transition path for the DDE desktop.
A dynamic tiling Wayland compositor inspired by xmonad, with tree-based layouts and workspace controls. Configuration can be expressed through TOML and C settings, allowing users to customise layout behaviour while keeping the compositor itself relatively small. The author introduced Vivarium as a personal experimental dynamic Wayland compositor built with wlroots.
An experimental Wayland compositor component designed to pair with AwesomeWM, using Awesome’s Lua-driven policy rather than providing an unrelated desktop shell. The project required a patched Awesome client and its repository is archived, so it is of historical interest rather than a current desktop choice. Way Cooler was designed as the compositor component of AwesomeWM for Wayland; its repository was archived in January 2020.
A wlroots-based Wayland compositor inspired by Compiz, with window management and desktop effects extended through plugins. Settings use an INI-style configuration file; users can enable effects and behaviours independently, making Wayfire a configurable compositing desktop rather than a fixed tiler. Wayfire describes itself as a 3D Wayland compositor inspired by Compiz and built on wlroots.
The reference Wayland compositor maintained by the Wayland project, used to test protocol implementations and demonstrate compositor behaviour. It can also provide practical sessions through separate desktop, kiosk, IVI and headless shells, with configuration chosen for the shell and backend in use. Weston is the Wayland project’s compositor implementation and testbed, supporting both basic desktop use and specialised shells.
A Wayland compositor inspired by Window Maker, bringing its dock, clip, workspaces and NeXTSTEP-style stacking desktop to Wayland. It is an early-stage project with text property-list configuration, and combines window management with the compositor needed to run Wayland clients. wlmaker is explicitly inspired by Window Maker and carries that project’s NeXTSTEP-like desktop concepts into a Wayland compositor.