Fast rendering WebAssembly power
This repo lets you render fast 2D and 3D graphics with a C++ core compiled to WebAssembly, giving desktop‐class performance in browsers and smooth animation.
esengine/estella
A fast 2D and 3D game engine — TypeScript SDK, C++/WebAssembly core, visual editor. Ship one project to web, desktop, WeChat MiniGames, playable ads, and native Android / iOS.
THE USEFUL PART
A fast 2D and 3D game engine — TypeScript SDK, C++/WebAssembly core, visual editor. Ship one project to web, desktop, WeChat MiniGames, playable ads, and native Android / iOS.
THE STACKRADAR WALKTHROUGH
A short introduction from our reel. See the project README for the current details.
This repo lets you render fast 2D and 3D graphics with a C++ core compiled to WebAssembly, giving desktop‐class performance in browsers and smooth animation.
This repo lets you use a visual editor with hierarchy, inspector, and asset browser, so you can build scenes without hand‐editing JSON files or external tools.
This repo lets you ship the same project to web, desktop, WeChat MiniGames, playable ads, and native Android or iOS, keeping a single codebase for all platforms.
GITHUB SNAPSHOT
Recorded counts, not a growth rate or a quality score.
OBSERVED STAR HISTORY
Daily source snapshots are collected automatically. A trend appears after at least two real observations—no invented historical growth.

FROM THE PROJECT
Source excerpts from the project's README. Not an independent review, verification or security audit.
A fast 2D and 3D game engine powered by WebAssembly and ECS
[](https://github.com/esengine/estella/actions/workflows/build.yml) [](LICENSE) [](https://github.com/esengine/estella/releases) [](https://isocpp.org/) []() [](https://deepwiki.com/esengine/estella)
Website • Getting Started • Documentation • Discord • QQ群: 481923584
Estella is a 2D and 3D game engine — sprites, tilemaps and UI as much as lit, shadowed, physically simulated 3D worlds — with a TypeScript SDK driven by a high-performance C++ core — as WebAssembly on the web, and compiled ahead of time on native platforms. It outputs games that run in web browsers, on the desktop, in WeChat MiniGames, as single-file playable ads, and as native Android / iOS apps. A visual editor is available as a separate, free download.
Amazon Lumberyard Bistro, rendered in real time by Estella (a sun that follows the sky, baked bounce light and reflections, the Neutral output transform). Scene © Amazon Lumberyard, CC BY 4.0 , modified.
2D and 3D, one engine — Sprites, tilemaps, UI and Spine alongside PBR-lit models, shadows, baked lighting and 3D physics, in the same scene, editor and export pipeline
Fast — C++ rendering pipeline compiled to WebAssembly, not interpreted JS
Type-safe — First-class TypeScript SDK with defineSystem, defineComponent, and Query
Data-oriented — Entity-Component-System architecture for scalable game logic
Visual editor — Scene hierarchy, inspector, asset browser — no JSON editing
Cross-platform — One codebase, deploy to web, desktop, WeChat MiniGames, playable ads, and native mobile
Animation & Physics — Built-in Spine animation, skeletal animation, and 2D and 3D physics
Agent-native — The editor is an MCP server and ships an agent of its own; both drive the same tools its UI does
| Feature | Description |
|---|---|
| Visual Editor | Scene editor with hierarchy, inspector, and asset management |
| ECS Architecture | Compose entities from reusable components, drive behavior with systems |
| 2D | Sprites, tilemaps, UI, text, Spine and DragonBones animation, 2D physics, particles, lighting |
| 3D | glTF / FBX import, PBR materials, directional / point / spot lights with shadows, HDRI environments, baked lightmaps and light probes, reflection probes, decals, 3D physics, skeletal animation, navigation, post-processing, streamed large worlds |
| WebGL / WebGPU Rendering | One renderer for 2D and 3D, custom shaders — all in WebAssembly |
| TypeScript SDK | Type-safe API: defineSystem, defineComponent, Query, Commands |
| Cross-Platform | One project → web, desktop, WeChat MiniGames, playable ads, and native Android / iOS |
| Native mobile | A real arm64 app rendering through an embedded Dawn (Metal / Vulkan) — not a WebView |
| AI agents | The editor is an MCP server with 130+ tools: connect Claude Code, Cursor or your own agent |
Download the editor for Windows or macOS from estellaengine.com — served from the project's mirror, always the newest release. Every build is also on the releases page.
Open the editor and click New Project
Enter a project name, select a location, and click Create
The editor creates a project with a default scene containing a Camera entity.
Add entities and components in the scene editor, then write systems in TypeScript:
import {
defineComponent, defineSystem, addSystem,
Query, Mut, Res, Time, LocalTransform
} from 'esengine';
const Speed = defineComponent('Speed', { value: 200 });
addSystem(defineSystem(
[Res(Time), Query(Mut(LocalTransform), Speed)],
(time, query) => {
for (const [entity, transform, speed] of query) {
transform.position.x += speed.value * time.delta;
}
}
));
Press F5 in the editor to preview.
The editor speaks the Model Context Protocol. Point Claude Code, Cursor, or any MCP-capable tool at it and the agent drives the real editor — opens projects, spawns entities from the same Create menu you use, edits component fields, enters play mode, takes a screenshot to see what it built, and exports the finished game. Sixty-five tools, all of them the pipelines the UI itself calls.
Every call goes through the editor's command surface, so creates are undoable and you can take the mouse back at any time. Tools a plugin adds are listed beside the editor's own.
Connecting an Agent (MCP) — connect Claude Code, Cursor, or your own
Full documentation: estellaengine.com/docs
Introduction
Installation
Quick Start
ECS Architecture
Components
Systems
Building & Exporting
Android & iOS
AI Agents
We welcome contributions! Please read the Contributing Guide before submitting a Pull Request.
Maintainers: see the release procedure for candidate builds, acceptance evidence and publishing.
This repository — the engine runtime, the SDK, the asset pipeline, the CLI, the project templates and the editor plugin API — is licensed under the Apache License, Version 2.0.
You may use, modify, and distribute it for any purpose, including commercial use, free of charge. There is no separate commercial license and no noncommercial restriction. We follow Semantic Versioning and keep a CHANGELOG.
Three things to keep in mind:
The visual editor is a separate product and is not open source. It is free to
download and use, and it is built on this engine — but its source lives in a private repository rather than here. Everything needed to build, run and ship a game is in this repository: see BUSINESS_MODEL.md for what that boundary is and what changed.
Trademarks. Apache-2.0 grants rights to the code, not to the "Estella" /
"ESEngine" names or logos. You may state that your project uses Estella, but please don't imply endorsement or ship a fork under the Estella name.
Spine is separate. The bundled Spine Runtimes are not open
source. If you ship a game that uses Estella's Spine integration, you need a valid Spine license from Esoteric Software — independent of Estella's Apache-2.0 license. See NOTICE.
How the project sustains itself (sponsorship, optional hosted/pro add-ons, marketplace, and support) is described openly in BUSINESS_MODEL.md.
Read the original READMEKEEP EXPLORING
Repository preview
strelov1/freehire
Open-source search engine aggregating 3.3M+ tech jobs directly from 294k+ company career pages. Zero recruiters, no reposts.
git clone https://github.com/strelov1/freehire.gitzenhostai/9drive
Virtual storage gateway pooling multiple free Google Drive accounts into a combined 60GB+ high-speed personal bucket.
git clone https://github.com/zenhostai/9drive.git
Repository screenshot
snapotter-hq/SnapOtter
Open-source, self-hosted file-processing tool. Convert, compress, OCR, transcribe & run local AI across image, video, audio, PDF & documents, via UI, REST API & pipelines. Your files never leave your network.
git clone https://github.com/snapotter-hq/SnapOtter.gitShort demos. New discoveries. Less noise in your feed.