A curated list of Entity-Component-System (ECS) libraries and resources.
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.
- 🟢 entt - Fast and reliable entity-component system. ⭐ 13.2k
- 🟢 Flecs - A Multithreaded Entity Component System written for C89 & C99. ⭐ 8.7k
- 🟢 WickedEngine's ECS - WickedEngine's ECS implementation. ⭐ 7.3k
- 🟡 EntityX - Fast, type-safe C++ entity component system. ⭐ 2.3k
- 🟢 pico_ecs - Single-header and cross-platform ECS. ⭐ 564
- 🟢 Gaia-ECS - Fast and type-safe C++17 archetype-based entity component system. ⭐ 134
- 🟢 mustache - A fast, modern C++ entity component system. ⭐ 78
- 🟢 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
- cl-fast-ecs - Blazingly fast Entity-Component-System microframework. [gitlab]
- 🟢 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
- 🟡 ecs - A Go-implementation of the Entity-Component-System paradigm. ⭐ 338
- 🟢 Ark - An archetype-based Entity Component System for Go. ⭐ 302
- 🟢 Concord - A feature-complete ECS library. ⭐ 326
- 🟢 evolved.lua - Evolved ECS (Entity-Component-System) for Lua. ⭐ 224
- 🟢 Ark.jl - An archetype-based Entity Component System (ECS) for Julia. It is a port of the Go ECS Ark. ⭐ 84
- 🟢 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 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
Inactive (22): archived or no commits for 3+ years
- 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
Game engines built on ECS architecture.
- 🟢 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
- 🟡 Engo - A cross-platform game engine written in Go following an interpretation of the Entity Component System paradigm. ⭐ 1.8k
- 🟢 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
- 🟢 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
- 💀 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
Graphics and rendering engines using ECS.
- 🟢 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.
Performance benchmarks comparing ECS frameworks.
- 🟡 ecs_benchmark - Benchmarks of common ECS (Entity-Component-System)-Frameworks in C/C++. ⭐ 308
- 🟢 ECS C# Benchmark - Benchmarks of the main ECS Frameworks for: C#. ⭐ 181
- 🟢 ECS C# Benchmark - Common uses-cases - Benchmark many common use cases in the simplest and most performant variant. ⭐ 48
- CSharpECSComparison - Benchmarks of common ECS Frameworks for C#. ⭐ 53
- 🟢 Lua ECS Library Benchmark - Benchmarks of common ECS Frameworks in Lua. ⭐ 9
Articles and blog posts about ECS and data-oriented design.
- Data-oriented design
- ECS back and forth
- Let's build an Entity Component System from scratch
- Entity Systems are the future of MMOG development
- Building an ECS
- Systems Interaction in Entity-Component-System (events)
- Overview of ECS variants & definitions
- Understand data-oriented design
- Unity ECS series
- Seba's Lab
- WickedEngine's ECS implementation
Conference talks and presentations about ECS.
- itCppCon19: ECS back and forth
- GDC 2018: Unity at GDC - A Data Oriented Approach to Using Component Systems
- Meeting C++ 2018: Data oriented design in practice
- CppCon 2018: Stoyan Nikolov “OOP Is Dead, Long Live Data-oriented Design”
- Data Oriented Design Resources
- Data Oriented GUI in Rust
- Is There More to Game Architecture than ECS - Bob Nystrom (Roguelike Celebration 2018)
- Unite 2018: C# Job System + ECS usage and demo with Intel
- Codestar 2018 ECS - A Different Approach to Game Development
- CppCon 2014: Mike Acton "Data-Oriented Design and C++"
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.
