đź…­

Cardboard; an exciting scrollable tiling window manager

I’ve been having a lot of fun with Cardboard, the scrollable tiling window manager (WM) (STWM) for Linux. It’s quite an unusual WM, and it’s really only at the prototype stage. After the initial learning curve, I found that it helped me stay focused on one task, and it greatly reduced how much time I spent rearranging my windows.

You’re probably most familiar with a stacking WM; an environment where you [mostly manually] arrange windows next to – or on top of each other. This is what you’ll be familiar with from Windows and MacOS.

Cardboard automatically arranges all windows side-by-side on a continuous scrolling horizontal plane. As you switch between apps, either by keyboard shortcuts or by scrolling, you move left or right through the scrolling plane of windows. It’s a bit hard to describe, so I made a little demo video:

Cardboard window manager demo video

The WM isn’t suitable for day-to-day use by most users. It doesn’t support drag-and-drop and other features most people would consider being necessities. It doesn’t have any default keyboard shortcuts or a global toolbar with niceties like a clock and system power controls.

Cardboard gives you a blank slate, and you need to configure it to get a useful experience. I contributed a quick start guide to the project’s documentation if you still want to give it a go.

Cardboard has its fair share of quirks and it crashes every so often. I couldn’t keep using it even though I was highly motivated and interested. I’ve moved back to using a more battle-tested traditional stacking WM for now.

What fascinated me about Cardboard was the core mechanics of its STWM. It’s super optimized for the way I work on a computer. I usually have two different apps side-by-side, something you can comfortably fit within the dimensions of a regular laptop screen.

However, I often need three things side by side, and I frequently don’t need more than two-out-of-three things side by side but with an easy way to switch between them. I also have adjacent app windows that live kind of to the side of the main apps I use.

An STWM makes this workflow a breeze. I just put my windows in order of how frequently I need to access them, and scroll side to side as my app needs changes. I feel like there’s less overhead and less distracting to switching between tasks. I also don’t find myself accidentally ending up looking at the wrong window and getting distracted.

Other STWMs include PaperWM, the inspiration for Cardboard, and EndlessWM. There are also some earlier implementations of this concept, but it would require a lot of work to get them running on modern-day Linux.

PaperWM is an extension to the GNOME Desktop; building on the project’s great work and user experience by introducing the behavior of an STWM. It might not work with your version of GNOME, however. The project has trouble keeping up with the changing environment from the upstream GNOME project.

EndlessWM is another proof-of-concept WM that closely resembles Cardboard. However, the project made an unfortunate early development decision and stagnated after an upstream dependent project ended support.