Tag
Graphics & 3D tools
Rendering, game engines, 3D. 40 reviewed tools: 39 free or open source, 1 hosted with a real free tier.
Order: free and open source first, then hosted products with a real free tier, then paid-led; catalog order inside each group, with quiet or archived repos last. Not a score, and no tool pays for its place.
40 tools · first 30 in full
- PhaserMIT HTML5 2D game framework with scenes, physics, and tilemaps
Free / OSS · OSS/MIT · 40.5k GitHub stars
VerdictDefault 2D HTML5 game framework. MIT engine; Editor is paid and optional.
CatchPhaser 4 replaced the v3 renderer/FX/mask stack — v3 games need the migration guide. Phaser Editor is a separate commercial desktop product, not the OSS engine. The homepage can Cloudflare-gate a raw fetch; docs and GitHub are the source of truth.
- PixiJSMIT 2D WebGPU/WebGL renderer, not a game engine
Free / OSS · OSS/MIT · 48.4k GitHub stars
VerdictThe 2D WebGPU/WebGL renderer. Not Phaser. Not a product.
CatchA renderer, not a game engine. Bring physics, audio, scenes, netcode. If you wanted Phaser, this is the wrong layer.
- Babylon.jsApache-2.0 3D engine for the web, now on v9
Free / OSS · Apache-2.0 · 26.2k GitHub stars
VerdictThe open 3D game and rendering engine for the web. Apache-2.0, on v9.
CatchHeavier than a 2D starter. docs.babylonjs.com (with an s) has returned 500; working docs host is doc.babylonjs.com. Editor pricing was not verified here, so it is omitted.
- PlayCanvasMIT WebGL2/WebGPU engine plus an optional hosted Editor
Free / OSS · Freemium · 17.1k GitHub stars
VerdictOSS engine, optional Editor. Public projects are free; private cloud is not.
CatchDo not conflate the MIT engine with the hosted Editor. Private cloud projects are the paid line (Personal 15 USD/month; Organization 50 USD per seat/month). Cancel and private projects lock until you resubscribe or make them public.
- ColyseusMIT Node multiplayer rooms with state sync
Free / OSS · OSS/MIT · 7.4k GitHub stars
VerdictMIT multiplayer rooms. Self-host is the free path; Cloud is paid from dollar one.
CatchA server framework, not a renderer. Colyseus Cloud has no free tier — it starts at 15 USD/mo. Capacity depends on your code, not a marketed CCU cap.
- KAPLAYMIT successor to Kaboom for playground-first 2D games
Free / OSS · OSS/MIT · 1.8k GitHub stars
VerdictThe living Kaboom successor. MIT, playground-first, not Phaser.
CatchTwo lines: stable v3001 vs v4000 still alpha. Official host is kaplayjs.com, not kaboomjs.com. Named homepage titles are testimonials, not a studio showcase.
- Matter.jsMIT 2D rigid-body physics, not a Phaser replacement
Free / OSS · OSS/MIT · 18.5k GitHub stars
VerdictThe MIT 2D rigid-body lib. Use it off Phaser; on Phaser you already have Matter.
CatchPhaser already ships Matter physics. If you are on Phaser, you already have this. This gem is for Pixi/KAPLAY/canvas, not a second physics stack inside Phaser. Distinct from Phaser (full engine).
- melonJSMIT 2D engine: WebGPU to WebGL2 to Canvas AUTO, zero deps
Free / OSS · OSS/MIT · 6.4k GitHub stars
VerdictMIT zero-dep 2D engine. Not Phaser.
CatchWebGPU to WebGL2 to Canvas AUTO and Canvas2D-shaped API — not Phaser scene/plugin ecosystem. W4 cut re-opened. Distinct from Phaser, KAPLAY, and PixiJS.
- RapierApache-2.0 Rust/WASM physics: 2D+3D, joints, SIMD
Free / OSS · Apache-2.0 · 5.9k GitHub stars
VerdictApache-2.0 2D+3D physics. Not Matter.js 2D.
CatchRust/WASM 2D+3D with joints/SIMD/optional determinism — Matter.js is MIT 2D only. Planck covers the same 2D JS slot as Matter. Distinct from Matter.js.
- DefoldSource-available Lua game engine; forever free, not OSI Open Source
Free / OSS · Open-Core · 6.4k GitHub stars
VerdictForever-free Lua engine. Source-available — not OSI OSS; do not ship it as your own engine product.
CatchSource-available NOT OSI Open Source — §4a may not commercialize as a Game Engine Product. Forever free for making games; license is not MIT/Apache. Vs Phaser/melonJS/KAPLAY JS engines. Distinct from Phaser, melonJS, and KAPLAY.
- Cute Frameworkzlib/Unlicense C/C++ native-first framework + Emscripten
Free / OSS · OSS/MIT · 852 GitHub stars
VerdictPermissive C/C++ game framework. Native-first; web via Emscripten.
CatchC/C++ native-first + Emscripten — not Phaser/KAPLAY JS engines. Full framework — not Pixi/Babylon/PlayCanvas renderer-or-editor slots alone. Distinct from Phaser, KAPLAY, Pixi, Babylon, and PlayCanvas.
- GodotMIT engine with HTML5/Wasm+WebGL2; Compatibility mode for embeds
Free / OSS · OSS/MIT · 119k GitHub stars
VerdictMIT Godot. Web works in Compatibility/WebGL2; plan COOP/COEP only if you need threads.
CatchCompatibility/WebGL2 only for web; threaded export needs COOP/COEP — single-thread default since 4.3 for embeds. Not Phaser JS canvas. Distinct from Phaser.
- BevyMIT/Apache Rust ECS engine with first-party Web
Free / OSS · Apache-2.0 · 49.1k GitHub stars
VerdictMIT/Apache Rust game engine. Web via Wasm; not a JS canvas framework.
CatchRust ECS + first-party Web — not Phaser/Pixi/Babylon/PlayCanvas JS engines. Steeper Rust learning curve. Distinct from Phaser, Pixi, Babylon, and PlayCanvas.
- HeapsMIT Haxe+HashLink engine; HTML5/WebGL; Dead Cells stack
Free / OSS · OSS/MIT · 3.5k GitHub stars
VerdictMIT Haxe engine. HTML5/WebGL path; not a JS canvas framework.
CatchHaxe+HashLink HTML5/WebGL — not Phaser/Godot/Defold/Cute Framework/melonJS/Bevy. Different language/runtime bet. Distinct from Phaser, Godot, Defold, Cute Framework, melonJS, and Bevy.
- raylibzlib/libpng C game library + Emscripten web
Free / OSS · Zlib · 35.3k GitHub stars
Verdictzlib C game library. Web via Emscripten; not a JS framework.
CatchC+Emscripten web — not Phaser/Pixi/KAPLAY/melonJS JS engines. Lower-level than Godot/Defold/Bevy full engines. Distinct from JS canvas engines.
- RPG-JSMIT browser RPG/MMORPG TypeScript framework; Free Engine $0
Free / OSS · Freemium · 1.7k GitHub stars
VerdictMIT Free Engine for browser RPGs. Studio is optional paid; engine is free.
CatchBrowser RPG/MMORPG TypeScript framework (same code solo + networked) — not Phaser scenes, not Colyseus rooms alone, not GDevelop no-code, not Godot/Heaps. Studio is not the free path.
- Galacean EngineMIT Ant Group TypeScript WebGL engine + browser Editor
Free / OSS · OSS/MIT · 5.9k GitHub stars
VerdictMIT Ant Group WebGL engine. Editor + minigame path, not Babylon.
CatchVs Babylon/PlayCanvas: Ant Group TS WebGL + browser Editor + WeChat minigame lane — not Microsoft Babylon docs gravity, not PlayCanvas hosted-Editor freemium. Editor cloud pricing isn’t covered here.
- Excalibur.jsBSD-2 TypeScript 2D HTML5 game engine; free forever
Free / OSS · BSD-2-Clause · 2.4k GitHub stars
VerdictBSD-2 TS 2D engine. Free forever; pre-1.0, Phaser still wins ecosystem size.
CatchStill pre-1.0 API caution. Vs Phaser/melonJS/KAPLAY: smaller plugin marketplace than Phaser; not a 3D/WebGPU-first engine. You bring art pipeline and multiplayer.
- ThrelteMIT Three.js framework for Svelte
Free / OSS · OSS/MIT · 3.4k GitHub stars
VerdictMIT Svelte+Three. Free forever.
CatchSvelte-bound - not React Three Fiber. Still Three.js under the hood. Distinct from Theatre.js motion editor and Babylon engines.
- RiveMIT Wasm/JS runtime for interactive Rive animations
Free / OSS · Freemium · 1k GitHub stars
VerdictMIT runtime plus freemium editor. Runtime free.
CatchAuthoring lives in Rive editor freemium seats. Not After Effects Lottie. Distinct from lottie-web and Theatre.js timeline studio.
- NakamaApache-2.0 full game backend — auth, storage, matchmaking, chat
Free / OSS · Apache-2.0 · 13.5k GitHub stars
VerdictApache-2.0 game backend. Free OSS single-node path; cluster HA is Enterprise — not the free story.
CatchVs Colyseus, Gatho, and PartyKit: full social/game server, not a rooms-only kit, not process-per-room WebSockets, not CF Durable Objects. Multi-node HA / cluster management is Nakama Enterprise proprietary — the free path is OSS single-node (or single-process) self-host; clustering is the commercial side. You still run Postgres/Cockroach and own ops.
- SemIfMIT local/WebGPU semantic conditionals — OpenJev, the former pitch name
Free / OSS · OSS/MIT · 4.8k GitHub stars
VerdictMIT local semantic conditionals. Read logits on frozen open models; do not confuse it with structured output or calibrated refusal.
CatchVs Instructor and structured JSON: SemIf is a logit-read semantic gate, not schema validation or guaranteed JSON. Vs closed TypeSafe Jev: the local/open-model route is the point, but you bring compatible weights, runtime, and calibration discipline — this is not calibrated RLCD. Youth note: ~1.6k★ in ~3 days clears the Panel bar, but the surface is still young.
- Design Studio AIAgent-first design workspace with MCP, CLI, and shared human edits
Free / OSS · OSS/MIT · 222 GitHub stars
VerdictMIT agent-native design studio. Use when UI/slides/3D should be a shared document agents can MCP into.
CatchVs Stitch Skills / generic Figma MCP: this is a full self-hostable studio, not a Google Stitch plugin pack. Generation needs your own provider keys; Node 24+ and Playwright Chromium for local builds.
- MoliApache/MIT Rust headless browser for AI agents — structure first
Free / OSS · Apache-2.0 · 19.5k GitHub stars
VerdictDual-license agent browser when you want a slim Rust runtime with CDP/WebDriver surfaces; keep Chrome-based tools if you need full web fidelity.
CatchVs agent-browser and Playwright: Moli is its own lightweight browser runtime, not a CDP wrapper around Chrome and not a general test framework. Default install is curl|sh / irm|iex of release installer scripts — verify checksums. No GUI/GPU compositor; not pixel-parity Chrome; Canvas/WebGL/media are intentional gaps.
- MCP for BlenderMIT Blender MCP — prompt-driven 3D scenes from any agent client
Free / OSS · OSS/MIT · 31.6k GitHub stars
VerdictMIT Blender MCP when agents should block out 3D scenes and pull free assets — not CAD; disable default telemetry and treat code-exec like a shell.
CatchExec: `execute_blender_code` runs arbitrary Python inside Blender — save your work and do not point it at production files you can’t lose. Telemetry: a minimal anonymous usage record (install ID, tool name, success, timing, versions, OS) is sent by default; content capture is opt-in; set `DISABLE_TELEMETRY=true` to stop it all. Keyless AI 3D generation is a paid Premium line (tiers listed from $10). Third-party, not made by Blender. Vs cli-anything (generic app→CLI hub) and text-to-cad (parametric CAD/STEP): this is the scene/asset loop for Blender itself.
- build123dApache-2.0 Python CAD-as-code on Open Cascade — the library under text-to-cad
Free / OSS · Apache-2.0 · 3.5k GitHub stars
VerdictApache-2.0 Python CAD library when you need code-first solids — free via pip; for the agent seat see text-to-cad.
CatchRaw modeling library: no agent harness, no MCP, no viewer — pair with text-to-cad when an agent should drive CAD. Heavy Open Cascade / OCP install (native wheels, first install is large and platform-sensitive). Vs FreeCAD/CadQuery: CadQuery is the older Python OCCT layer; build123d is the newer ergonomic API many agent tools standardize on. Geometric correctness still needs a human tolerance pass before you cut metal.
- ShadersMIT WebGPU effects as components — React, Vue, Svelte, Solid, plain JS
Free / OSS · Freemium · 5.1k GitHub stars
VerdictMIT WebGPU effect components when a landing page needs GPU polish without writing WGSL — free engine, paid preset library, no documented WebGL fallback.
CatchReal WebGPU, and the README does not describe a WebGL fallback — check your browser support targets before using it on critical UI. The design editor, CLI sync, and MCP need a shaders.com account, and the editor, presets, and sections are under separate platform terms, not MIT. The 1,000+ presets, ready-made sections, watermark-free renders, and the Framer plugin are paid Pro. Vs pixijs or babylonjs (full renderers you program): Shaders is drop-in effect components, not a scene graph or game engine.
- BurnMIT/Apache-2.0 Rust deep-learning framework — train and run on many backends
Free / OSS · Apache-2.0 · 16.1k GitHub stars
VerdictMIT/Apache Rust DL framework when you want training or inference without Python — accept a thinner model zoo and pre-1.0 churn.
CatchFar fewer ready-made models, tutorials, and pretrained weights than PyTorch — ONNX import helps, but not every operator converts. Pre-1.0: expect breaking API changes between releases and pin your version. Smaller community for debugging training issues.
- Bubble TeaMIT Go framework for terminal UIs, built on The Elm Architecture — the engine under a lot of modern CLIs
Free / OSS · OSS/MIT · 45.5k GitHub stars
VerdictThe default way to build a polished interactive terminal UI in Go — start on v2, not on old v1 tutorials.
CatchGo only. The Elm Architecture is a different mental model from imperative terminal code, and every keypress and tick flows through one update function, which gets long in big apps unless you split models early. v1 to v2 is a breaking upgrade with a new import path, so older tutorials and examples may not compile as written. Vs textual (Python, CSS-style layouts and widgets): pick Bubble Tea if your CLI is already in Go.
- Dear ImGuiMIT bloat-free immediate-mode GUI for C++ tools
Free / OSS · OSS/MIT · 76.7k GitHub stars
VerdictThe default for in-game tools and developer UIs in C++.
CatchIt is built for tools and debug UIs, not polished end-user interfaces: theming, accessibility and text input for complex languages are limited. Immediate mode means you manage your own state and layout in code. Docking and multi-viewport live on a separate branch.
More with this tag (10)
- Ebitengine — Apache-2.0 dead simple 2D game engine for Go
- Flame — MIT game engine built on Flutter and Dart
- Fyrox — MIT 2D/3D Rust game engine with a scene editor
- Stride — MIT C# game engine with an editor, rendering and VR
- Redot Engine — MIT community fork of Godot for 2D and 3D games
- LittleJS — MIT tiny fast HTML5 game engine
- bgfx — BSD-2 cross-platform rendering library: bring your own engine
- MCP for Unity — MIT MCP server that lets AI assistants drive the Unity Editor
- Theatre.js — Apache-2.0 motion design editor for the web
- GDevelop — MIT event/no-code engine + HTML5; Pro required above $50k revenue
FAQ
- What is the top free pick among Graphics & 3D tools?
- Phaser leads the Stack Gems list for Graphics & 3D tools. Verdict: Default 2D HTML5 game framework. MIT engine; Editor is paid and optional.
- How many Graphics & 3D tools does Stack Gems review?
- 40: 39 free or open source, 1 hosted with a real free tier. Each review has a verdict and an honest Catch; no tool pays for its spot.
- Which Graphics & 3D tools can I self-host for free?
- Phaser, PixiJS, Babylon.js, PlayCanvas, Colyseus, KAPLAY, Matter.js, melonJS and 27 more.
- Which Graphics & 3D tools have the most GitHub stars?
- Godot (119k), Dear ImGui (76.7k), Bevy (49.1k), per GitHub on 2026-10-19. Stars measure attention, not fit; read the Catch.
- What is the catch with Phaser?
- Phaser 4 replaced the v3 renderer/FX/mask stack — v3 games need the migration guide.