- 1 General
- 2 Libraries
- 3 Compositors
- 4 Utilities
- 5 Screenshots
- Wayland is intended as a simpler replacement for X, easier to develop and maintain. GNOME and KDE are expected to be ported to it. Wayland is a protocol for a compositor to talk to its clients as well as a C library implementation of that protocol. The compositor can be a standalone display server running on Linux kernel modesetting and evdev input devices, an X application, or a wayland client itself. The clients can be traditional applications, X servers (rootless or fullscreen) or other display servers.
Part of the Wayland project is also the Weston reference implementation of a Wayland compositor. Weston can run as an X client or under Linux KMS and ships with a few demo clients. The Weston compositor is a minimal and fast compositor and is suitable for many embedded and mobile use cases.
- https://en.wikipedia.org/wiki/Wayland_(display_server_protocol) - a computer protocol that specifies the communication between a display server and its clients, as well as a reference implementation of the protocol in the C programming language. A display server using the Wayland protocol is called a Wayland compositor.Wayland is developed by a group of volunteers initially led by Kristian Høgsberg as a free and open community-driven project with the aim of replacing the X Window System with a modern, simpler windowing system in Linux and other Unix-like operating systems. The project's source code is published under the terms of the MIT License, a permissive free software licence
- Drew DeVault’s Blog: The future of Wayland, and sway’s role in it
- https://github.com/MirServer/wlcs - Wayland Conformance Test Suite
- https://github.com/emersion/hello-wayland - A hello world Wayland client, 2018 edition
- https://github.com/swaywm/wlroots - A modular Wayland compositor library
- https://github.com/Smithay/smithay - aims to provide building blocks to create wayland compositors in Rust. While not being a full-blown compositor, it'll provide objects and interfaces implementing common functionnalities that pretty much any compositor will need, in a generic fashion.
- https://gitlab.freedesktop.org/wayland/weston - A lightweight and functional Wayland compositor
- Sway - tiling Wayland compositor and a drop-in replacement for the i3 window manager for X11. It works with your existing i3 configuration and supports most of i3's features, plus a few extras.
- https://github.com/greole/sway-alternating-layout - Scripts to open new windows in sway using alternating layouts (splith/splitv) for each new window
Based on Awesome, Lua
- https://github.com/detomastah/adwc - adwm clone, dead
- https://github.com/djpohly/dwl - a compact, hackable compositor for Wayland based on wlroots. It is intended to fill the same space in the Wayland world that dwm does in X11, primarily in terms of philosophy, and secondarily in terms of functionality
- https://github.com/wizbright/waybox - An openbox clone on Wayland (WIP)
- https://github.com/johanmalm/labwc - Openbox alternative for Wayland
- https://github.com/taiwins/taiwins - a wayland window manager, supports both tiling and floating layout. It is designed to be mordern and modular. It is extensible through lua script and it has built-in shell and widgets implementation through nuklear GUI. It also supports popular tiling window manager features like gapping.
- https://github.com/ifreund/river - a dynamic tiling wayland compositor that takes inspiration from dwm and bspwm. Zig.
- https://github.com/stumpwm/mahogany - a tiling window manager for Wayland modeled after StumpWM. While it is not a drop-in replacement for stumpwm, stumpwm users should be very comfortable with Mahogany
- https://github.com/Cloudef/orbment - modular compositor for Wayland with flexible plugin architecture where plugins may co-operate with each other. The core consist of small code base which provide plugin management, and hooks api for plugins. Core plugins are used to provide functionality you would expect from bare bones tiling window manager.
- https://github.com/buffet/kiwmi - a work-in-progress extensive user-configurable Wayland Compositor. kiwmi specifically does not enforce any logic, allowing for the creation of Lua-scripted behaviors, making arduous tasks such as modal window management become a breeze. New users should be aware of the steep learning curve present, however this will be reduced as the project matures.
- https://github.com/Sasquatch-Labs/xuake - WYGIWYG Wayland Compositor
- https://github.com/ec1oud/grefsen - a Qt/Wayland compositor providing a minimal desktop environment.
- Cage - a kiosk compositor for Wayland. A kiosk is a window manager (in the X11 world) or compositor (in the Wayland world) that is designed for a user experience wherein user interaction and activities outside the scope of the running application are prevented. That is, a kiosk compositor displays a single maximized application at a time and prevents the user from interacting with anything but this application.
- https://github.com/udevbe/greenfield - HTML5 Wayland compositor seedling
- https://github.com/waymonad/waymonad - We all love tiling window managers and most of all we love xmonad. As you may know, wayland is trying to replace X11. This brings problems for us, since xmonad will not work with the new architecture. This project is intended to provide a wayland based desktop which shares the ideals and experience from xmonad.
- hikari - a stacking Wayland compositor which is actively developed on FreeBSD but also supports Linux. 
- https://github.com/atx/wtype - xdotool type for wayland
- https://github.com/cyclopsian/wdisplays - GUI display configurator for wlroots compositors
- https://github.com/wmww/wayland-debug - A command line tool to help debug Wayland clients and servers
- https://github.com/francma/wob - A lightweight overlay volume/backlight/progress/anything bar for Wayland.
- https://github.com/emersion/grim - Grab images from a Wayland compositor
- https://github.com/emersion/slurp - Select a region in a Wayland compositor and print it to the standard output.