What is the Shovel Library?

Shovel Library is a collection of ultra-simple routines I've found useful for making small interactive graphics applications.

Functions include

  • Window creation
  • 32-bit RGBA bitmap creation
  • Fast software based drawing routines (pixels, lines, text etc)
  • Mouse and keyboard input


  • Very small - DLL is 11 KBytes
  • Written in C++ but with a C interface (for ease of use from other languages)
  • Python bindings provided
  • Permissive BSD licence
  • Win32 version currently. Linux and Mac planned.


Running on Windows XP on a single core of an Intel Core i3 530 (3.4 GHz):

  • Putpixel - 31 million per second
  • Rectangle fill - 11 billion pixels per second
  • Text render - 11 million characters per second (8 point, fixed width font)
Last edit: Andrew Bainbridge 2012-04-21