Tree-based tiling that feels at home in GNOME
Anvil turns GNOME Shell into a fast, keyboard-friendly tiling environment without replacing the desktop you already use.
Install · User manual · Default keybindings · Report an issue
Note
Anvil is a GPL-3.0 fork of Forge, originally created by Jose Maranan. See the full credits.
Anvil automatically arranges windows in a tree of horizontal and vertical splits. You can navigate, move, swap, resize, float, stack, and tab windows with the keyboard, or reshape the layout with drag and drop. Layouts are maintained independently for each workspace and monitor.
Anvil is currently installed from source. You need GNOME Shell 45 through 50.1, Git, GNU Make, Node.js 24 or newer, npm, gettext (msgfmt), and GLib schema tools (glib-compile-schemas).
git clone https://github.com/GenKerensky/anvil.git
cd anvil
npm install
make install
gnome-extensions enable anvil@GenKerensky.github.comIf GNOME Shell has not discovered a first-time installation yet, log out and back in, then run the final gnome-extensions enable command again. On X11, you can restart Shell with Alt+F2, enter r, and press Enter instead.
To update an existing source installation:
git pull --ff-only
npm install
make installRestart GNOME Shell or log out and back in after updating when the running extension does not reload automatically.
Use Super+., open Anvil from the Extensions app, or run:
gnome-extensions prefs anvil@GenKerensky.github.comThe user manual covers every feature in its own guide. Start with:
