Awesome ECS
A curated list of Entity-Component-System (ECS) libraries and resources.
Contents
Legend : 🟢 commit within 1 yr · 🟡 commit within 3 yr · 💀 archived · ⭐ GitHub stars as of 2026-10-12. Software entries are ordered by stars; inactive entries (archived, or no commits for 3+ years) are folded at the end of each software category. Other resources keep their existing order.
Libraries and frameworks implementing the Entity-Component-System pattern.
C/C++
C#
🟢 Arch - A high-performance Archetype & Chunks Entity Component System for game development and data-oriented programming. ⭐ 1.8k
🟡 Svelto.ECS - Lightweight data oriented entity component system framework. ⭐ 1.4k
🟢 Friflo Engine ECS - ECS for .NET with focus on performance, cache locality and DX. ⭐ 785
🟡 Morpeh - ECS Framework for Unity Game Engine and .NET Platform. ⭐ 672
🟢 Fennecs - … the tiny, tiny, high-energy Entity-Component System! ⭐ 470
🟢 DragonECS - ECS for Unity and .NET. ⭐ 343
🟢 ME.BECS - ECS for Unity with full game state automatic rollbacks. ⭐ 257
🟢 Massive ECS - Bitset-based ECS with rollbacks. C# library and Unity package. ⭐ 224
🟢 Static ECS - C# Hierarchical Inverted Bitmap ECS framework. ⭐ 211
🟢 Frent - Data oriented ECF with an ECS api for C#, Godot, and Unity. ⭐ 187
🟢 TinyEcs - A tiny bevy-like archetype-style ECS library for dotnet. ⭐ 153
Common Lisp
Elixir
Python
🟢 esper - A lightweight Entity System for Python. ⭐ 703
Rust
🟢 bevy_ecs - Simple to use, ergonomic, fast, massively parallel, opinionated, and featureful written in Rust. ⭐ 48.9k
🟡 specs - Parallel entity component system written in Rust. ⭐ 2.6k
🟢 hecs - High-performance, minimalist entity-component-system. ⭐ 1.4k
🟢 shipyard - Entity Component System written in Rust. ⭐ 891
Go
🟡 ecs - A Go-implementation of the Entity-Component-System paradigm. ⭐ 338
🟢 Ark - An archetype-based Entity Component System for Go. ⭐ 302
Lua
Julia
🟢 Ark.jl - An archetype-based Entity Component System (ECS) for Julia. It is a port of the Go ECS Ark. ⭐ 84
Kotlin
🟢 Fleks - Fast, lightweight, multi-platform entity component system in Kotlin. ⭐ 270
JavaScript / TypeScript
🟢 bitECS - Functional, minimal, data-oriented, ultra-high performance ECS library. ⭐ 1.5k
🟢 miniplex - The gentle game entity manager, focused on ease of use and developer experience. ⭐ 1.1k
🟢 becsy - A multithreaded Entity Component System (ECS) for TypeScript and JavaScript, inspired by ECSY and bitecs. ⭐ 298
🟡 Thyseus - An archetypal Entity Component System, built entirely in Typescript. ⭐ 86
🟢 Woven-ECS - A multithreaded ECS framework for TypeScript aimed at collaborative browser applications. ⭐ 12
Zig
🟢 Zig ECS - A Zig port of the fantasic Entt. ⭐ 431
🟢 ZCS - An archetype based entity component system written in Zig. ⭐ 151
🟢 knoedel - Data oriented application framework written in Zig (ECS). ⭐ 47
🟡 mach-ecs - Entity Component System from first-principles designed for Zig. ⭐ 34
🟢 Comptime ECS - Comptime-defined ECS implementation in Zig. ⭐ 4
Haskell
🟢 apecs - A fast, extensible, type driven Haskell ECS framework for games. ⭐ 425
Inactive (22): archived or no commits for 3+ years</summary>
Entitas - The Entity Component System Framework for C# and Unity. ⭐ 7.7k · last commit 2023
legion - High performance Rust ECS library. ⭐ 1.7k · last commit 2021
💀 ECSY - Entity Component System for javascript. ⭐ 1.2k · last commit 2025
Artemis-odb - A continuation of the popular Artemis ECS framework. ⭐ 832 · last commit 2021
tiny-ecs - Entity Component System for Lua that’s simple, flexible, and useful. ⭐ 789 · last commit 2020
DefaultEcs - ECS for syntax and usage simplicity with maximum performance. ⭐ 765 · last commit 2023
Kengine - Game engine with an Entity-Component-System (ECS) architecture. ⭐ 618 · last commit 2023
ecst - Experimental C++14 multithreaded compile-time entity-compnent-system library. ⭐ 490 · last commit 2018
💀 ECS - C++ single-header entity component system library. ⭐ 481 · last commit 2019
💀 anax - Open source C++ entity system. ⭐ 460 · last commit 2021
ECS Lua - A fast and easy to use ECS engine for game development. ⭐ 234 · last commit 2021
EntityPlus - C++14 entity component system. ⭐ 192 · last commit 2020
EntityFu - A simple, fast entity component system written in C++. ⭐ 86 · last commit 2016
LeoEcsLite - Lightweight C# Entity Component System framework. ⭐ 62 · last commit 2022
Ginseng - An ESC library designed for use in games. ⭐ 56 · last commit 2021
Nata - Entity management for Lua. ⭐ 51 · last commit 2020
ecs.hpp - A single header C++14 entity component system library. ⭐ 41 · last commit 2023
beast - Basic Entity/Aspect/System Toolkit. ⭐ 30 · last commit 2021
matter - C++17/20 ECS implementation. ⭐ 21 · last commit 2019
Fast ECS - Simple and fast Entity-Component-System (ECS) library written in Dart. ⭐ 17 · last commit 2021
goomy - A tiny, experimental ECS framework. ⭐ 14 · last commit 2019
cl-ecs - An implementation of the Entity-Component-System pattern mostly used in game development. ⭐ 8 · last commit 2016
</details>
Game engines built on ECS architecture.
C++
🟢 WickedEngine - 3D engine with modern graphics. ⭐ 7.3k
🟢 halley - A lightweight game engine written in modern C++. ⭐ 3.9k
🟢 Lumos - Cross-Platform C++ 2D/3D game engine. ⭐ 1.6k
🟡 MxEngine - C++ open source 3D game engine. ⭐ 1.2k
🟢 nebula - Open-source and free-to-use modern C++ game engine. ⭐ 1.1k
🟡 Lina Engine - Modular, tiny and fast C++ game engine, aimed to develop 3D desktop games. ⭐ 899
🟢 supernova - Game engine for 2D and 3D projects with ECS and data-oriented design. ⭐ 866
🟢 Nazara Engine - Cross-platform framework aimed at real-time applications requiring audio, 2D and 3D real-time rendering, network and more. ⭐ 843
🟢 crown - General purpose data-driven game engine. ⭐ 30
Go
🟡 Engo - A cross-platform game engine written in Go following an interpretation of the Entity Component System paradigm. ⭐ 1.8k
Rust
🟢 Bevy - A refreshingly simple data-driven game engine built in Rust. ⭐ 48.9k
🟡 Ambient - The multiplayer game engine. ⭐ 3.9k
🟢 Bones - An easy-to-use game engine for making real games. ⭐ 314
Zig
🟢 mach - Game engine & graphics toolkit for building high-performance, truly cross-platform, robust & modular games, visualizations, and desktop/mobile GUI apps. ⭐ 4.8k
Inactive (7): archived or no commits for 3+ years</summary>
💀 Amethyst - Data-oriented and data-driven game engine written in Rust. ⭐ 8k · last commit 2021
Sparky - Cross-Platform High Performance 2D/3D game engine. ⭐ 1.2k · last commit 2016
kengine - Game engine focused on ease-of-use, runtime extensibility and compile-time type safety. ⭐ 618 · last commit 2023
Engine - Basic cross-platform 3D game engine. ⭐ 301 · last commit 2018
💀 shiva - Modern Cross-Platform C++ Engine with modularity. ⭐ 160 · last commit 2019
Usagi - Hierarchical component entity system based game engine. ⭐ 57 · last commit 2022
igneous - Open source game engine written in C++. ⭐ 52 · last commit 2019
</details>
Graphics and rendering engines using ECS.
C++
🟢 The Forge - Cross-Platform Rendering Framework with support for PC Windows, Linux, Ray Tracing, macOS/iOS, Android, XBOX, PS4, PS5, Switch, Quest 2. ⭐ 5.7k
🟢 bs::framework - Modern C++14 library for the development of real-time graphical applications. ⭐ 1.9k
Physics simulation libraries organized as ECS.
C++
🟢 edyn - A real-time physics engine organized as an ECS. ⭐ 792
Performance benchmarks comparing ECS frameworks.
Articles and blog posts about ECS and data-oriented design.
Conference talks and presentations about ECS.
Books on ECS and data-oriented design.
Tutorial series for learning ECS.
Related curated lists.
Wikis, FAQs, glossaries, and other reference material on ECS.
Contributions are very welcome! Please read the contribution guidelines first. Also, please feel free to report any error.
</a>