The indie game engine with personality.
WebGPU-powered 2D and 3D rendering with automatic batching, sprite atlasing, and real-time shader compilation. Chloe handles 100,000+ sprites at silky 60fps.
Automatic atlas generation and GPU-optimized draw calls.
Hot-reloading shaders with live preview and error overlay.
Dynamic 2D lights with shadow casting and ambient glow.
Write game logic in JavaScript or TypeScript with Chloe's intuitive API. Component-based architecture, event systems, and built-in state machines.
Entity-component-system architecture for modular game objects.
Decoupled message passing with typed events and listeners.
Visual FSM editor with code generation and debugging tools.
Write a few lines. See instant results. Chloe's live editor lets you iterate at the speed of thought.
import { Entity, Sprite, Input } from 'chloe';
export class Player extends Entity {
speed = 200;
sprite = this.add(Sprite, {
src: 'hero.png',
frames: 8,
fps: 12
});
update(dt) {
const dir = Input.axis('move');
this.pos.x += dir.x * this.speed * dt;
this.pos.y += dir.y * this.speed * dt;
this.sprite.play(
dir.len() > 0 ? 'run' : 'idle'
);
}
}
Use arrow keys or WASD to move the character in the preview
From asset pipeline to deployment, Chloe comes batteries-included. No plugins required.
Drag-and-drop asset import with automatic optimization.
Real-time performance graphs, memory tracking, and frame analysis.
Export to Web, Desktop, and Mobile from a single project.
Join thousands of indie developers making games with Chloe. Free and open source, forever.