What’s this? DragonRuby Game Toolkit

What's this? DragonRuby Game Toolkit
What’s this? DragonRuby Game Toolkit

April 6, 2026

Ruby outside the web browser. On a game cartridge. Sort of.

Every so often, something appears in the Ruby world that doesn’t fit the usual categories. It’s not a web framework. Not a gem for background jobs. Not a Rails performance tweak.

It’s a game engine. And it runs on a Nintendo Switch.

The thing

DragonRuby Game Toolkit is a cross-platform 2D game engine where you write code in Ruby. Actual Ruby. Not a transpiled subset. Not a configuration language masquerading as Ruby.

You write:

def tick(args)
args.outputs.sprites << {
x: 100, y: 100, w: 50, h: 50,
path: "sprites/hero.png"
}
end

That’s a moving character. That’s a game loop. That’s Ruby doing something most of the ecosystem forgot it could do.

Why this matters for Ruby developers

1. It breaks the “Ruby is only for web” assumption

For years, the message has been subtle but persistent: Ruby is slow. Ruby is for Rails. Ruby doesn’t belong on desktops or devices.

DragonRuby runs on:

  • Windows, macOS, Linux
  • Steam Deck
  • Raspberry Pi (zero, 3, 4, 5)
  • iOS and Android
  • Web (WebAssembly)
  • Console development kits (PS5, Xbox, Switch)

That’s not theoretical. Games built with DragonRuby have shipped on those platforms.

2. Hotloading is a different way to think

You edit a Ruby file while the game is running. Save it. The game updates immediately. No recompile. No restart. No losing your place in the game.

This isn’t just convenient. It changes how you experiment. You can tweak a number, see the result instantly, and decide if it feels right. That’s closer to playing an instrument than compiling a binary.

3. No garbage collection stutter

DragonRuby uses a custom Ruby VM designed for real-time graphics. The garbage collector doesn’t freeze your frame rate. That’s why the same code runs on a Raspberry Pi and a PlayStation.

This is the part that surprises Rubyists the most: Ruby can be this fast if you build the right VM for the job.

4. No editor. Just code.

Unity, Godot, and Unreal are powerful. They also have enormous visual editors with hundreds of buttons, panels, and menus.

DragonRuby has none of that. You write code. You run it. You see the result. That’s the entire workflow.

For developers who learned programming through text editors and terminals, this feels like home.

Who is behind it

Amir Rajan (creator of A Dark Room on iOS) leads the project. The underlying tech is built by Ryan C. Gordon – one of the original SDL developers who has ported countless games to Linux and other platforms.

They use DragonRuby to build their own games. They are not abstract architects. They are in the trenches.

The community

The DragonRuby Discord is consistently described as unusually welcoming. The creators answer questions daily. Newcomers are treated seriously. There is no “read the manual” gatekeeping.

If you have ever hesitated to ask a question in a C++ or Rust community – this is the opposite.

A few things to know

It’s not CRuby. DragonRuby uses its own VM. That means:

  • No gem install
  • No Rails or Sinatra
  • A custom standard library

But it is Ruby. Classes. Blocks. Hashes. Symbols. The syntax you know. The patterns you use. They all work.

It’s 2D only. This is not a 3D engine. If you want 3D, this is not the tool.

What has been made with it

Over 400 games. Some have been written about in The New Yorker, The New York Times, and Slate Magazine.

Not prototypes. Shipped, playable, commercial games.

Why RubyStackNews should care

Because Ruby needs stories like this.

The ecosystem is healthy on the web. But Ruby as a language – the thing itself – can do more than serve HTTP requests. DragonRuby proves that.

It’s a reminder that Ruby is not just “the Rails language.” It’s a general-purpose tool that creative people are using in unexpected places.

Where to look

The Itch.io page has the downloads and documentation. The GitHub organization has community samples and contributions. The Discord is where the conversations happen.

The bottom line

DragonRuby is not a toy. It’s not a hobby project. It’s a production game engine that happens to speak Ruby.

And it’s a sign that our language still has surprises left.

Article content

Leave a comment