Tooling

Game Engines (2D)

Phaser, PixiJS, LÖVE, MonoGame, libGDX, GDevelop, Cocos and the 2D-focused field.

2D-focused engines for games where the physics, rendering and tooling are all built around sprites, tilemaps and 2D animation. For browser 3D see 3D / WebGL. For 3D engines see 3D engines. For tilemap and level editing see tile / level editors. For pixel art see pixel art tools. For the overall game-dev landscape see Game Development.

Godot 4 is also one of the best 2D engines on the planet — most "should I use Godot or X?" decisions are won by Godot for 2D unless you specifically want web-first or no-code.

Web-first / HTML5

  • Phaser 3 / Phaser 4 — MIT, the dominant HTML5 game framework. Massive plugin ecosystem, Tiled / Spine integration, Arcade + Matter physics. Phaser 4 (TypeScript-rewritten core) is the current line.
  • PixiJS — MIT 2D WebGL/WebGPU renderer, not a full engine but the rendering core under many web games. Use directly for renderer-only work; pair with custom logic for game frameworks.
  • Excalibur.js — opinionated TypeScript engine, good for web games with scenes, actors and tweens.
  • Kaboom / kaplay — minimalist JS framework, beginner-friendly, beloved for game jams. Renamed from Kaboom to kaplay after the Replit team transition.
  • ct.js — visual editor + JS, good for teaching.
  • melonJS — long-running OSS HTML5 engine.

Code-first / cross-platform

  • LÖVE 2D — free Lua framework, MIT, ~5MB runtime, ships everywhere. The minimalist's choice; Bytepath, Balatro precursors, countless jam games.
  • MonoGame — MIT, the open-source XNA successor. C# all the way; ships to Steam, mobile, consoles. Stardew Valley runs on it. FNA is the alternative XNA reimplementation focused on shipping older XNA games.
  • libGDX — Apache 2.0 Java/Kotlin framework, ships to desktop / mobile / web. Mature, large community.
  • Heaps.io — Haxe engine, ships Dead Cells and Northgard.
  • Solar2D (formerly Corona SDK) — free Lua, mobile-focused.
  • Cocos Creator — free, especially popular in Asia for HTML5 / mobile games. JavaScript / TypeScript.

Visual / no-code

  • GDevelop — free, OSS, event-based. Outstanding for absolute beginners and educators. Web editor + native. Runs on iPad.
  • Construct 3 — subscription ($99–$149/year). No-code, browser-based, very polished. Unbeatable iteration speed in its lane.
  • Buildbox — paid no-code, hyper-casual mobile focus.
  • GameMaker — historically paid, now free for non-commercial, paid for export. GML scripting. Behind Undertale, Hyper Light Drifter, Hotline Miami.

Python ecosystem

  • pygame / pygame-ce — battle-tested Python, MIT. The Community Edition is the active fork. Great for learning; ships fine for small/medium games.
  • arcade — modern Python game library; cleaner API than pygame.
  • Pyxel — retro-fantasy console in Python.

When to fall back to 3D engines

If you need light-style 2D physics with 3D depth (stylized 2.5D, parallax, smooth pan/zoom in cinematics), Godot 4 and Unity both have 2D-first modes that can outperform pure-2D engines for hybrid games.

Pick this if…

  • First game, kids / classroom: GDevelop or Construct 3.
  • Web game / itch.io HTML5: Phaser, or PixiJS for renderer-only.
  • Tiny, hackable, Lua: LÖVE.
  • Cross-platform C#: MonoGame.
  • Java/Kotlin shop: libGDX.
  • Visual novel / classic adventure: see specialized engines.
  • Game-jam speed in JS: kaplay.
  • You started in pygame and want to keep going: pygame-ce.
  • Stuck on which: Godot 4 in 2D mode. It's that good.

On this page