Xmonad – dynamically tiling X11 window manager

Xmonad is a minimalist, tiling window manager for X, written in the functional programming language Haskell. Windows are managed using automatic layout algorithms, which can be dynamically reconfigured. At any time windows are arranged so as to maximise the use of screen real estate.

All features of the window manager are accessible purely from the keyboard: a mouse is entirely optional.

Xmonad is configured in Haskell, and custom layout algorithms may be implemented by the user in config files. A principle of Xmonad is predictability: the user should know in advance precisely the window arrangement that will result from any action.

Features include:

  • Very stable, fast, small and simple.
  • Automates the common task of arranging windows, so you can concentrate on getting tasks completed.
  • First class keyboard support: a mouse is unnecessary.
  • Minimalistic – no window decorations, no status bar, no icon dock.
  • Stable.
  • Extensible.
  • Per-screen workspaces.
  • Xinerama support for multihead displays.
  • Managehooks.
  • Tiling reflection.
  • State preservation.
  • Layout mirroring.
  • Full support for floating, tabbing and decorated windows.
  • Full support for GNOME and KDE utilities.
  • Per-workspace layout algorithms.
  • Per-screens custom status bars.
  • Compositing support.
  • Powerful, stable customisation and on-the-fly reconfiguration.
  • Large extension library.
  • Locale support.

Website: xmonad.org
Support: Documentation
Developer: Spencer Janssen, Don Stewart, Jason Creighton and many contributors
License: BSD-3


Xmonad is written in Haskell. Learn Haskell with our recommended free books and free tutorials.

Return to Dynamic Window Managers Home Page | Return to Window Managers Home Page

Read our complete collection of recommended free and open source software. The collection covers all categories of software.

The software collection forms part of our series of informative articles for Linux enthusiasts. There's tons of in-depth reviews, alternatives to Google, fun things to try, hardware, free programming books and tutorials, and much more.
Share this article

Share your Thoughts

This site uses Akismet to reduce spam. Learn how your comment data is processed.