name neuswc
description slighly less simple wayland compositing library
last change 2026-05-23

commit briefs

branches

refs

tree

readme

 1neuswc
 2------
 3
 4neuswc is a fork of [swc](https://github.com/michaelforney/swc/) created by [wayland.fyi](https://wayland.fyi). it provides an easy C library interface to make a wayland compositor. it is much smaller than alternatives like wlroots, and easier to use. it is also portable to linux, freebsd, and netbsd (natively, without any linux compatibility layers.) openbsd support is partial; if you want tohelp with that (or anything else) submit a patch to the [mailing list](https://lists.sr.ht/~shrub900/neuswc)
 5
 6you can view a list of some compositors made with neuswc at the [wayland.fyi website.](https://wayland.fyi)
 7
 8the refrence compositor implementation is [tohu](https://git.sr.ht/~shrub900/tohu): it uses many of the new features and is small and simple to understand. if you want to make your own compositor, it can be a useful place to refrence how things work, or a base to customize.
 9
10
11neu features
12------------
13
14- z axis ordering
15- more cursor functions
16- zooming
17- experimental subsurface support
18- fullscreen
19- double window borders
20- screenshots
21- evdev-only input backend
22- layer shell support
23- window decorations
24
25neuswc is in active development, we plan to add many more features, and increase compatibility with new wayland protocols.
26
27build
28-----
29
30you will need: 
31- A C99-compatible compiler
32- meson or muon
33- pkg-config
34- wayland-scanner, wayland-server, wayland-client
35- wayland-server, wayland-client
36- libdrm, pixman, xkbcommon
37- [neuwld](https://git.sr.ht/~shrub900/neuwld)
38- on linux, either libinput or evdev, depending on your choice of input backend, neither on BSD
39- xcb, xcb-composite, xcb-ewmh and xcb-icccm if you want Xwayland support.
40
41to build, i use muon and samu. you can probably do something similar with meson and ninja.
42warning if you use muon, you will need a recent version built from their git for wayland module support, probably not your distro-packaged version. i do:
43
44```
45muon setup build
46samu -C build
47sudo samu -C build install
48```
49
50credits
51-------
52an extremely large thank you to [michael forney](https://mforney.org) for creating the original [swc](https://github.com/michaelforney/swc) and [wld](https://github.com/michaelforney/wld), without his amazing work none of this would be possible! once they are more stable, we hope some of the changes from our neu* forks will eventually be upstreamed into the original projects.