Skip to content
The tiniest window manager.
C Python
Branch: master
Clone or download
Latest commit 9d05612 Apr 22, 2014
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore Ignore built executable. Nov 27, 2011
Makefile Fix to argument order for gcc. Nov 27, 2011
README COPYING was mostly redundant. Nov 27, 2011
annotated.c Fixed clicking on the root window Nov 27, 2011
tinywm.c rm 2 useless lines Apr 22, 2014 Removed print -statements in the spirit of TinyWM :) Nov 27, 2011


TinyWM is written by Nick Welch <> in 2005 & 2011.

This software is in the public domain and is provided AS IS, with NO WARRANTY.

TinyWM is a ridiculously tiny window manager implemented in nearly as few lines
of C as possible, without being obfuscated or entirely useless. It allows you
to move, resize, focus (sloppy), and raise windows -- that's it!  TinyWM's main
purpose is to serve as a quick example of some window manager programming


  Makefile: highly advanced build system
  tinywm.c: the code
  annotated.c: same, but with tons of rambling comments about everything a python version (requires CVS python-xlib due to a bug)


  Focus follows pointer.
  Alt+Button1, drag: interactive window move
  Alt+Button3, drag: interactive window resize
  Alt+F1: raise focused window

  Another very small window manager is failsafewm.  Originally I started
  hacking on it, as there was quite a bit of stuff in it that I thought was
  unneeded.  I wound up rewriting it from scratch, with just the bare
  necessities, and that became TinyWM.

  Yet another small -- but in comparison to TinyWM, big -- window manager is
  aewm.  It's a good example for learning about writing a window manager.

You can’t perform that action at this time.