JS Game Dev

A curated catalogue of JavaScript game engines, libraries, and frameworks.

Excalibur.js

2D Engine

A TypeScript-first 2D game engine with a clean, structured API. Sits nicely between simple libraries and heavy frameworks for medium-sized projects.

2D EngineTypeScriptStructured

Best For: Medium-sized 2D Games, TypeScript projects

Kaplay

2D Engine

A friendly game library and spiritual successor to Kaboom.js. Simplifies game creation with a component-based approach, letting you build games with minimal boilerplate.

Game LibraryBeginner FriendlyFast Prototyping

Best For: Game Jams, Learning, Arcade Games

LittleJS

2D Engine

An ultra-lightweight game engine under 10KB. Despite its tiny size, it provides rendering, physics, audio, and particle effects with zero dependencies.

LightweightNo DependenciesFast

Best For: Size-constrained jams (js13k), Mobile Web

Phaser

2D Engine

The industry-standard 2D game framework for the web. A complete package handling rendering, physics, input, audio, and animations with excellent documentation and community support.

Game FrameworkWebGL/CanvasMature

Best For: Commercial 2D games, RPGs, Platformers

PixiJS

2D Engine

A high-performance 2D rendering engine focused on drawing graphics efficiently. Not a full game engine - you build your own game loop and systems on top.

Rendering EngineHigh PerformanceWebGL

Best For: Visual-heavy apps, Custom Engine building

Two.js

2D Engine

A 2D drawing library that renders to WebGL, Canvas2D, or SVG with the same API. Great for vector graphics and UI, but not a full game engine.

Drawing LibrarySVG/CanvasRenderer Agnostic

Best For: Vector games, Puzzles, UI

Babylon.js

3D Engine

A fully-featured 3D game engine backed by Microsoft. Comes with built-in physics, audio, collisions, and extensive tooling for a batteries-included experience.

Full Game EngineTypeScriptMicrosoft

Best For: Complex 3D Games, Enterprise Sims

PlayCanvas

3D Engine

A cloud-first game engine with a visual editor similar to Unity. Runs in the browser, allowing teams to collaborate on 3D scenes and code in real-time.

Visual EditorCloudCollaborative

Best For: Teams, Unity-like workflow

React Three Fiber

3D Engine

A React renderer for Three.js that lets you build 3D scenes using declarative components. Leverages the React ecosystem for state management and tooling.

React RendererDeclarativeEcosystem

Best For: React Developers, UI/3D Hybrids

Three.js

3D Engine

The most popular JavaScript library for 3D graphics on the web. Provides tools to draw 3D scenes but requires you to build your own game logic and physics.

3D LibraryWebGLStandard

Best For: Showcases, Custom 3D Engines, Experiments

Ammo.js

Physics

A direct port of the industrial-strength Bullet physics engine. Capable of complex 3D simulations used in AAA-style games, available in both JS and WASM.

3D PhysicsBullet PortHeavy Duty

Best For: Complex 3D simulations, AAA-style physics

Cannon-es

Physics

A lightweight 3D physics engine in pure JavaScript. Easier to debug than WASM engines and integrates well with Three.js for simple 3D physics needs.

3D PhysicsPure JSThree.js Friendly

Best For: Simple 3D physics, Rapid development

Matter.js

Physics

A comprehensive 2D physics engine handling rigid body collisions and physical forces. Well-documented with many examples for common game physics scenarios.

2D PhysicsRigid BodyStable

Best For: 2D Physics puzzles, Angry Birds clones

Planck.js

Physics

A pure JavaScript port of Box2D, the physics engine behind Angry Birds. Offers highly accurate 2D physics without the complexity of C++ bindings.

2D PhysicsBox2D PortAccurate

Best For: Angry Birds style physics, Precision

Rapier

Physics

A high-performance physics engine written in Rust, compiled to WebAssembly. Handles both 2D and 3D simulations with thousands of objects efficiently.

Physics EngineWASMHigh Performance

Best For: Complex simulations, High object count

bitECS

Logic & AI

A high-performance Entity Component System (ECS) library. Organizes game data to maximize CPU cache efficiency, essential for games with thousands of entities.

ECS LibraryHigh PerformanceData Oriented

Best For: Massive RTS, High-entity simulations

boardgame.io

Logic & AI

A dedicated engine for turn-based games. Automates state management, move validation, and multiplayer synchronization so you can focus on game rules.

State EngineTurn-BasedMultiplayer Sync

Best For: Card Games, Chess-likes, Strategy

Miniplex

Logic & AI

A developer-friendly Entity Component System (ECS) library. Helps organize game logic cleanly and is designed to work smoothly with React and R3F.

ECS LibraryDX FocusedReact Friendly

Best For: Game Logic Management, React Games

Mistreevous

Logic & AI

A library for Behavior Trees, a common method for AI design. Structure complex enemy behaviors (patrol, chase, attack) without messy conditional code.

AI LibraryBehavior TreesDSL

Best For: Complex NPC/Enemy AI

Yuka

Logic & AI

A JavaScript AI library for steering behaviors (flocking, pursuit, evasion) and pathfinding. Engine-agnostic but pairs perfectly with Three.js.

AI LibrarySteeringPathfinding

Best For: 3D AI, Flocking, Navigation

Colyseus

Multiplayer

The standard Node.js framework for multiplayer games. Handles game state synchronization, room management, and matchmaking between players seamlessly.

Multiplayer FrameworkNode.jsState Sync

Best For: Real-time Multiplayer, IO games

Howler.js

Audio

A robust audio library that simplifies playing sounds across all browsers. Solves common compatibility issues and makes managing sound effects and music easy.

Audio LibraryCross-browserStandard

Best For: All web games needing sound

Tone.js

Audio

A framework for generating music and audio programmatically. Acts like a Digital Audio Workstation in code, perfect for rhythm games or procedural sound.

Audio FrameworkSynthesisMusic Generation

Best For: Rhythm games, Procedural Audio

ZzFX

Audio

A tiny sound generator that creates retro-style sound effects using code instead of audio files. Generates jumps, lasers, and explosions in bytes.

Sound GeneratorRetroProcedural

Best For: Game Jams, Retro SFX

Electron

Tools & UI

A framework for building cross-platform desktop applications with JavaScript, HTML, and CSS. Package your game for Windows, macOS, and Linux distribution on Steam or itch.io.

Desktop PackagingCross-PlatformChromium

Best For: Steam/Desktop Distribution

GSAP

Tools & UI

The industry standard for programmatic web animation. Handles complex timelines, tweens, and morphing efficiently, far beyond standard CSS animations.

Animation LibrarySequencingRobust

Best For: Cinematic Intros, Complex UI

Lottie

Tools & UI

A library that renders Adobe After Effects animations on the web. Display high-quality, complex vector animations without large video files.

Animation LibraryVectorAfter Effects

Best For: High-fidelity UI animations

Nipple.js

Tools & UI

A library for adding virtual on-screen joysticks. Creates touch-screen controls for mobile games, mimicking the feel of physical analog sticks.

Input LibraryMobileTouch

Best For: Mobile Game Controls

Tweakpane

Tools & UI

A compact UI library for creating debug panels. Add sliders and inputs to tweak game variables like speed, gravity, or colors in real-time.

Debug UIGUIMinimal

Best For: Debugging Physics/Speed/Colors

Vite

Tools & UI

A modern build tool for development. Provides instant server start, hot module replacement, and optimized production builds for any web project.

Build ToolFastHMR

Best For: Project Setup, Development