Designed for Playful Creation
A tiny virtual console for building pixel art games. Hot-reload, 256 colors, Lua scripting, and export to desktop or web.
Hot Reload
See your changes instantly. Edit your Lua scripts and watch the game update in real-time without restarting.
Lua Scripting
Write game logic in Lua — a simple, powerful language perfect for beginners and veterans alike.
Desktop & Web
Build once, run everywhere. Export your games for JVM desktop or WebGL browser — from a single codebase.
function _draw() -- clear the screen gfx.cls(1) -- draw shapes shape.rectf(10, 10, 50, 30, 8) shape.circlef(128, 128, 24, 12) -- print text print("hello tiny!", 80, 200, 7) end
function _init() player = { x = 128, y = 128 } end function _update() if ctrl.pressing(keys.right) then player.x = player.x + 2 end end function _draw() gfx.cls(1) spr.draw(0, player.x, player.y) end
function _update() if ctrl.pressed(keys.space) then sfx.play(0) end end function _draw() gfx.cls(2) print("press space!", 80, 120, 7) end
Powerfully Simple
Lua Scripting
Use Lua to bring your worlds to life. A lightweight, easy-to-learn language with a clean API for sprites, input, maps, and sound. Writing game logic feels like sketching on paper.
No Restart Required
Hot Reload Everything
Edit your scripts while the game is running. Change colors, tweak physics, rewrite behaviors — your game state stays intact, so you never lose your flow.
function _update() -- tweak speed while playing! enemy.speed = 3 if enemy.x < player.x then enemy.x = enemy.x + enemy.speed end end function _draw() spr.draw(1, enemy.x, enemy.y) end
Ready to Play?
Start building your retro-style game right now, directly in your browser. No installation required.