MiniGL is a minimal 2D Game Library, available as a Ruby gem, and built on top of the Gosu gem.

It provides the following features:

  • Resource management (images, sound effects, songs, tilesets, fonts)
  • Input manipulation (keyboard, mouse, joystick)
  • UI (text, buttons, text fields, drop-down lists, progress bars)
  • Basic physics and collision checking
  • Animated objects

More functionalities are coming. Feel free to contribute! You can send feedback to [email protected].


MiniGL was built on top of the Gosu gem. This gem has its own dependencies for compiling extensions. Visit this page for details.

After installing the Gosu dependencies, you can just gem install minigl.


  • The library is 100% RDoc-documented here.
  • The wiki is a work in progress with tutorials and examples.
  • Test package and examples aren't complete!

Version 2.3.5

  • Updated Ruby and Gosu dependencies to support Ruby 3.0 and Gosu 1.1.


Contributions are very welcome. Feel free to fork and send pull requests. Also, you can support my work by donating bitcoins to this wallet: bc1qsp7mypdqvkt88xtnarmaytt0etxfccxr5pt5tk