Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jslee02/awesome-entity-component-system
:sunglasses: A curated list of Entity-Component-System (ECS) libraries and resources
https://github.com/jslee02/awesome-entity-component-system
List: awesome-entity-component-system
awesome-list data-oriented-design ecs entity-component-system game-engine
Last synced: 9 days ago
JSON representation
:sunglasses: A curated list of Entity-Component-System (ECS) libraries and resources
- Host: GitHub
- URL: https://github.com/jslee02/awesome-entity-component-system
- Owner: jslee02
- License: unlicense
- Created: 2018-12-01T07:08:23.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2024-03-08T11:52:37.000Z (9 months ago)
- Last Synced: 2024-05-23T07:33:05.693Z (7 months ago)
- Topics: awesome-list, data-oriented-design, ecs, entity-component-system, game-engine
- Homepage:
- Size: 53.7 KB
- Stars: 496
- Watchers: 23
- Forks: 48
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-robotics-system-design - awesome-ecs
- AwesomeCppGameDev - awesome-entity-component-system - Component-System (ECS) libraries and resources (Awesome)
- ultimate-awesome - awesome-entity-component-system - :sunglasses: A curated list of Entity-Component-System (ECS) libraries and resources. (Other Lists / PowerShell Lists)
README
# awesome-ecs
:sunglasses: A curated list of Entity-Component-System (ECS) libraries and resources## ECS Libraries
#### C/C++
* __anax__ - Open source C++ entity system [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/miguelmartin75/anax) ![miguelmartin75/anax](https://img.shields.io/github/stars/miguelmartin75/anax.svg?style=flat&label=Star&maxAge=86400)
* __ECS__ - C++ single-header entity component system library [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/redxdev/ECS) ![redxdev/ECS](https://img.shields.io/github/stars/redxdev/ECS.svg?style=flat&label=Star&maxAge=86400)
* __ecs.hpp__ - A single header C++14 entity component system library [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/BlackMATov/ecs.hpp) ![BlackMATov/ecs.hpp](https://img.shields.io/github/stars/BlackMATov/ecs.hpp.svg?style=flat&label=Star&maxAge=86400)
* __ecst__ - Experimental C++14 multithreaded compile-time entity-compnent-system library [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/SuperV1234/ecst) ![SuperV1234/ecst](https://img.shields.io/github/stars/SuperV1234/ecst.svg?style=flat&label=Star&maxAge=86400)
* __EntityFu__ - A simple, fast entity component system written in C++ [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/NatWeiss/EntityFu) ![NatWeiss/EntityFu](https://img.shields.io/github/stars/NatWeiss/EntityFu.svg?style=flat&label=Star&maxAge=86400)
* __EntityPlus__ - C++14 entity component system [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/Yelnats321/EntityPlus) ![Yelnats321/EntityPlus](https://img.shields.io/github/stars/Yelnats321/EntityPlus.svg?style=flat&label=Star&maxAge=86400)
* __EntityX__ - Fast, type-safe C++ entity component system [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/alecthomas/entityx) ![alecthomas/entityx](https://img.shields.io/github/stars/alecthomas/entityx.svg?style=flat&label=Star&maxAge=86400)
* __entt__ - Fast and reliable entity-component system [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/skypjack/entt) ![skypjack/entt](https://img.shields.io/github/stars/skypjack/entt.svg?style=flat&label=Star&maxAge=86400)
* __Flecs__ - A Multithreaded Entity Component System written for C89 & C99 [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/SanderMertens/flecs) ![SanderMertens/flecs](https://img.shields.io/github/stars/SanderMertens/flecs.svg?style=flat&label=Star&maxAge=86400)
* __Gaia-ECS__ - Fast and type-safe C++17 archetype-based entity component system [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/richardbiely/gaia-ecs) ![richardbiely/gaia-ecs](https://img.shields.io/github/stars/richardbiely/gaia-ecs.svg?style=flat&label=Star&maxAge=86400)
* __Ginseng__ - An ESC library designed for use in games [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/apples/ginseng) ![apples/ginseng](https://img.shields.io/github/stars/apples/ginseng.svg?style=flat&label=Star&maxAge=86400)
* __goomy__ - A tiny, experimental ECS framework [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/vberlier/goomy) ![vberlier/goomy](https://img.shields.io/github/stars/vberlier/goomy.svg?style=flat&label=Star&maxAge=86400)
* __Kengine__ - Game engine with an Entity-Component-System (ECS) architecture [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/phisko/kengine) ![phisko/kengine](https://img.shields.io/github/stars/phisko/kengine.svg?style=flat&label=Star&maxAge=86400)
* __matter__ - C++17/20 ECS implementation [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/Dreyri/matter) ![Dreyri/matter](https://img.shields.io/github/stars/Dreyri/matter.svg?style=flat&label=Star&maxAge=86400)
* __mustache__ - A fast, modern C++ entity component system [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/kirillochnev/mustache) ![kirillochnev/mustache](https://img.shields.io/github/stars/kirillochnev/mustache.svg?style=flat&label=Star&maxAge=86400)
* __pico_ecs__ - Single-header and cross-platform ECS [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/empyreanx/pico_headers) ![empyreanx/pico_headers](https://img.shields.io/github/stars/empyreanx/pico_headers.svg?style=flat&label=Star&maxAge=86400)#### C#
* __Arch__ - A high-performance Archetype & Chunks Entity Component System for game development and data-oriented programming [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/genaray/Arch) ![genaray/Arch](https://img.shields.io/github/stars/genaray/Arch.svg?style=flat&label=Star&maxAge=86400)
* __DefaultEcs__ - ECS for syntax and usage simplicity with maximum performance [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/Doraku/DefaultEcs) ![Doraku/DefaultEcs](https://img.shields.io/github/stars/Doraku/DefaultEcs.svg?style=flat&label=Star&maxAge=86400)
* __DragonECS__ - ECS for Unity and .NET [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/DCFApixels/DragonECS) ![DCFApixels/DragonECS](https://img.shields.io/github/stars/DCFApixels/DragonECS.svg?style=flat&label=Star&maxAge=86400)
* __Entitas__ - The Entity Component System Framework for C# and Unity [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/sschmid/Entitas) ![sschmid/Entitas](https://img.shields.io/github/stars/sschmid/Entitas.svg?style=flat&label=Star&maxAge=86400)
* __Friflo Engine ECS__ - ECS for .NET with focus on performance, cache locality and DX [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/friflo/Friflo.Json.Fliox/tree/main/Engine) ![friflo/Friflo.Json.Fliox](https://img.shields.io/github/stars/friflo/Friflo.Json.Fliox.svg?style=flat&label=Star&maxAge=86400)
* __LeoEcsLite__ - Lightweight C# Entity Component System framework [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/LeoECSCommunity/ecslite) ![LeoECSCommunity/ecslite](https://img.shields.io/github/stars/LeoECSCommunity/ecslite.svg?style=flat&label=Star&maxAge=86400)
* __ME.BECS__ - ECS for Unity with full game state automatic rollbacks [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/chromealex/ME.BECS) ![chromealex/ME.BECS](https://img.shields.io/github/stars/chromealex/ME.BECS.svg?style=flat&label=Star&maxAge=86400)
* __Morpeh__ - ECS Framework for Unity Game Engine and .NET Platform [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/scellecs/morpeh) ![scellecs/morpeh](https://img.shields.io/github/stars/scellecs/morpeh.svg?style=flat&label=Star&maxAge=86400)
* __Svelto.ECS__ - Lightweight data oriented entity component system framework [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/sebas77/Svelto.ECS) ![sebas77/Svelto.ECS](https://img.shields.io/github/stars/sebas77/Svelto.ECS.svg?style=flat&label=Star&maxAge=86400)
* __Fennecs__ - ... the tiny, tiny, high-energy Entity-Component System! [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/outfox/fennecs) ![outfox/fennecs](https://img.shields.io/github/stars/outfox/fennecs.svg?style=flat&label=Star&maxAge=86400)
* __TinyEcs__ - A tiny bevy-like archetype-style ECS library for dotnet [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/andreakarasho/TinyEcs) ![andreakarasho/TinyEcs](https://img.shields.io/github/stars/andreakarasho/TinyEcs.svg?style=flat&label=Star&maxAge=86400)#### Common Lisp
* __beast__ - Basic Entity/Aspect/System Toolkit [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/sjl/beast) ![sjl/beast](https://img.shields.io/github/stars/sjl/beast.svg?style=flat&label=Star&maxAge=86400)
* __cl-ecs__ - An implementation of the Entity-Component-System pattern mostly used in game development [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/bit-phlippers/cl-ecs) ![bit-phlippers/cl-ecs](https://img.shields.io/github/stars/bit-phlippers/cl-ecs.svg?style=flat&label=Star&maxAge=86400)
* __cl-fast-ecs__ - Blazingly fast Entity-Component-System microframework [![GitLab](https://img.shields.io/badge/GitLab-grey)](https://gitlab.com/lockie/cl-fast-ecs) ![lockie/cl-fast-ecs](https://img.shields.io/gitlab/stars/lockie/cl-fast-ecs.svg?style=flat&label=Star&maxAge=86400)#### Dart
* __Fast ECS__ - Simple and fast Entity-Component-System (ECS) library written in Dart. [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/QiXi/fast_ecs) ![QiXi/fast_ecs](https://img.shields.io/github/stars/QiXi/fast_ecs.svg?style=flat&label=Star&maxAge=86400)
#### Elixir
* __ECSx__ - An ECS framework for Elixir [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/ecsx-framework/ECSx) ![ecsx-framework/ECSx](https://img.shields.io/github/stars/ecsx-framework/ECSx.svg?style=flat&label=Star&maxAge=86400)
#### Python
* __esper__ - A lightweight Entity System for Python [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/benmoran56/esper) ![benmoran56/esper](https://img.shields.io/github/stars/benmoran56/esper.svg?style=flat&label=Star&maxAge=86400)
#### Rust
* __shipyard__ - Entity Component System written in Rust [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/leudz/shipyard) ![leudz/shipyard](https://img.shields.io/github/stars/leudz/shipyard.svg?style=flat&label=Star&maxAge=86400)
* __specs__ - Parallel entity component system written in Rust [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/slide-rs/specs) ![slide-rs/specs](https://img.shields.io/github/stars/slide-rs/specs.svg?style=flat&label=Star&maxAge=86400)
* __legion__ - High performance Rust ECS library [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/amethyst/legion) ![amethyst/legion](https://img.shields.io/github/stars/amethyst/legion.svg?style=flat&label=Star&maxAge=86400)
* __bevy_ecs__ - Simple to use, ergonomic, fast, massively parallel, opinionated, and featureful written in Rust [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/bevyengine/bevy/tree/main/crates/bevy_ecs) ![bevyengine/bevy](https://img.shields.io/github/stars/bevyengine/bevy.svg?style=flat&label=Star&maxAge=86400)
* __hecs__ - High-performance, minimalist entity-component-system [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/Ralith/hecs) ![Ralith/hecs](https://img.shields.io/github/stars/Ralith/hecs.svg?style=flat&label=Star&maxAge=86400)#### Go
* __Arche__ - An archetype-based Entity Component System for Go [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/mlange-42/arche) ![mlange-42/arche](https://img.shields.io/github/stars/mlange-42/arche.svg?style=flat&label=Star&maxAge=86400)
* __ecs__ - A Go-implementation of the Entity-Component-System paradigm [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/EngoEngine/ecs) ![EngoEngine/ecs](https://img.shields.io/github/stars/EngoEngine/ecs.svg?style=flat&label=Star&maxAge=86400)#### Lua
* __ECS__ Lua - A fast and easy to use ECS engine for game development [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/nidorx/ecs-lua) ![nidorx/ecs-lua](https://img.shields.io/github/stars/nidorx/ecs-lua.svg?style=flat&label=Star&maxAge=86400)
* __tiny-ecs__ - Entity Component System for Lua that's simple, flexible, and useful [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/bakpakin/tiny-ecs) ![bakpakin/tiny-ecs](https://img.shields.io/github/stars/bakpakin/tiny-ecs.svg?style=flat&label=Star&maxAge=86400)#### Java
* __Artemis-odb__ - A continuation of the popular Artemis ECS framework [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/junkdog/artemis-odb) ![junkdog/artemis-odb](https://img.shields.io/github/stars/junkdog/artemis-odb.svg?style=flat&label=Star&maxAge=86400)
#### Kotlin
* __Fleks__ - Fast, lightweight, multi-platform entity component system in Kotlin [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/Quillraven/Fleks) ![Quillraven/Fleks](https://img.shields.io/github/stars/Quillraven/Fleks.svg?style=flat&label=Star&maxAge=86400)
#### JavaScript / Typescript
* __becsy__ - A multithreaded Entity Component System (ECS) for TypeScript and JavaScript, inspired by ECSY and bitecs. [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/LastOliveGames/becsy) ![bitecs](https://img.shields.io/github/stars/LastOliveGames/becsy.svg?style=flat&label=Star&maxAge=86400)
* __bitECS__ - Functional, minimal, data-oriented, ultra-high performance ECS library [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/NateTheGreatt/bitECS) ![bitecs](https://img.shields.io/github/stars/NateTheGreatt/bitecs.svg?style=flat&label=Star&maxAge=86400)
* __ECSY__ - Entity Component System for javascript [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/ecsyjs/ecsy) ![ecsyjs/ecsy](https://img.shields.io/github/stars/ecsyjs/ecsy.svg?style=flat&label=Star&maxAge=86400)
* __miniplex__ - The gentle game entity manager, focused on ease of use and developer experience. [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/hmans/miniplex) ![miniplex](https://img.shields.io/github/stars/hmans/miniplex.svg?style=flat&label=Star&maxAge=86400)
* __Thyseus__ - An archetypal Entity Component System, built entirely in Typescript [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/JaimeGensler/thyseus) ![miniplex](https://img.shields.io/github/stars/JaimeGensler/thyseus.svg?style=flat&label=Star&maxAge=86400)#### Zig
* __mach-ecs__ - Entity Component System from first-principles designed for Zig [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/hexops/mach-ecs) ![hexops/mach-ecs](https://img.shields.io/github/stars/hexops/mach-ecs.svg?style=flat&label=Star&maxAge=86400)
* __Zig ECS__ - A Zig port of the fantasic Entt [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/prime31/zig-ecs) ![prime31/zig-ecs](https://img.shields.io/github/stars/prime31/zig-ecs.svg?style=flat&label=Star&maxAge=86400)## Applications powered by ECS
### Game Engines
#### C++
* __crown__ - General purpose data-driven game engine [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/dbartolini/crown) ![dbartolini/crown](https://img.shields.io/github/stars/dbartolini/crown.svg?style=flat&label=Star&maxAge=86400)
* __Engine__ - Basic cross-platform 3D game engine [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/Shervanator/Engine) ![Shervanator/Engine](https://img.shields.io/github/stars/Shervanator/Engine.svg?style=flat&label=Star&maxAge=86400)
* __halley__ - A lightweight game engine written in modern C++ [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/amzeratul/halley) ![amzeratul/halley](https://img.shields.io/github/stars/amzeratul/halley.svg?style=flat&label=Star&maxAge=86400)
* __igneous__ - Open source game engine written in C++ [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/MissingBitStudios/igneous) ![MissingBitStudios/igneous](https://img.shields.io/github/stars/MissingBitStudios/igneous.svg?style=flat&label=Star&maxAge=86400)
* __kengine__ - Game engine focused on ease-of-use, runtime extensibility and compile-time type safety [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/phisko/kengine) ![phisko/kengine](https://img.shields.io/github/stars/phisko/kengine.svg?style=flat&label=Star&maxAge=86400)
* __Lina Engine__ - Modular, tiny and fast C++ game engine, aimed to develop 3D desktop games [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/inanevin/LinaEngine) ![inanevin/LinaEngine](https://img.shields.io/github/stars/inanevin/LinaEngine.svg?style=flat&label=Star&maxAge=86400)
* __Lumos__ - Cross-Platform C++ 2D/3D game engine [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/jmorton06/Lumos) ![jmorton06/Lumos](https://img.shields.io/github/stars/jmorton06/Lumos.svg?style=flat&label=Star&maxAge=86400)
* __MxEngine__ - C++ open source 3D game engine [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/asc-community/MxEngine) ![asc-community/MxEngine](https://img.shields.io/github/stars/asc-community/MxEngine.svg?style=flat&label=Star&maxAge=86400)
* __nebula__ - Open-source and free-to-use modern C++ game engine [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/gscept/nebula) ![gscept/nebula](https://img.shields.io/github/stars/gscept/nebula.svg?style=flat&label=Star&maxAge=86400)
* __Nazara Engine__ - Cross-platform framework aimed at real-time applications requiring audio, 2D and 3D real-time rendering, network and more [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/NazaraEngine/NazaraEngine) ![NazaraEngine/NazaraEngine](https://img.shields.io/github/stars/NazaraEngine/NazaraEngine.svg?style=flat&label=Star&maxAge=86400)
* __shiva__ - Modern Cross-Platform C++ Engine with modularity [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/Milerius/shiva) ![Milerius/shiva](https://img.shields.io/github/stars/Milerius/shiva.svg?style=flat&label=Star&maxAge=86400)
* __Sparky__ - Cross-Platform High Performance 2D/3D game engine [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/TheCherno/Sparky) ![TheCherno/Sparky](https://img.shields.io/github/stars/TheCherno/Sparky.svg?style=flat&label=Star&maxAge=86400)
* __supernova__ - Game engine for 2D and 3D projects with ECS and data-oriented design [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/supernovaengine/supernova) ![supernovaengine/supernova](https://img.shields.io/github/stars/supernovaengine/supernova.svg?style=flat&label=Star&maxAge=86400)
* __Usagi__ - Hierarchical component entity system based game engine [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/vitei/Usagi) ![vitei/Usagi](https://img.shields.io/github/stars/vitei/Usagi.svg?style=flat&label=Star&maxAge=86400)
* __Lumos__ - Cross-Platform C++ 2D/3D game engine [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/jmorton06/Lumos) ![jmorton06/Lumos](https://img.shields.io/github/stars/jmorton06/Lumos.svg?style=flat&label=Star&maxAge=86400)
* __supernova__ - Game engine for 2D and 3D projects with ECS and data-oriented design [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/supernovaengine/supernova) ![supernovaengine/supernova](https://img.shields.io/github/stars/supernovaengine/supernova.svg?style=flat&label=Star&maxAge=86400)
* __kengine__ - Game engine focused on ease-of-use, runtime extensibility and compile-time type safety [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/phisko/kengine) ![phisko/kengine](https://img.shields.io/github/stars/phisko/kengine.svg?style=flat&label=Star&maxAge=86400)
* __MxEngine__ - C++ open source 3D game engine [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/asc-community/MxEngine) ![asc-community/MxEngine](https://img.shields.io/github/stars/asc-community/MxEngine.svg?style=flat&label=Star&maxAge=86400)
* __nebula__ - Open-source and free-to-use modern C++ game engine [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/gscept/nebula) ![gscept/nebula](https://img.shields.io/github/stars/gscept/nebula.svg?style=flat&label=Star&maxAge=86400)
* __halley__ - A lightweight game engine written in modern C++ [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/amzeratul/halley) ![amzeratul/halley](https://img.shields.io/github/stars/amzeratul/halley.svg?style=flat&label=Star&maxAge=86400)
* __Nazara Engine__ - Cross-platform framework aimed at real-time applications requiring audio, 2D and 3D real-time rendering, network and more [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/NazaraEngine/NazaraEngine) ![NazaraEngine/NazaraEngine](https://img.shields.io/github/stars/NazaraEngine/NazaraEngine.svg?style=flat&label=Star&maxAge=86400)
* __Lina Engine__ - Modular, tiny and fast C++ game engine, aimed to develop 3D desktop games [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/inanevin/LinaEngine) ![inanevin/LinaEngine](https://img.shields.io/github/stars/inanevin/LinaEngine.svg?style=flat&label=Star&maxAge=86400)#### Go
* __Engo__ - A cross-platform game engine written in Go following an interpretation of the Entity Component System paradigm [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/EngoEngine/engo) ![EngoEngine/engo](https://img.shields.io/github/stars/EngoEngine/engo.svg?style=flat&label=Star&maxAge=86400)
#### Rust
* __Ambient__ - The multiplayer game engine [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/AmbientRun/Ambient) ![dbartolini/crown](https://img.shields.io/github/stars/AmbientRun/Ambient.svg?style=flat&label=Star&maxAge=86400)
* __Amethyst__ - Data-oriented and data-driven game engine written in Rust [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/amethyst/amethyst) ![amethyst/amethyst](https://img.shields.io/github/stars/amethyst/amethyst.svg?style=flat&label=Star&maxAge=86400)
* __Bevy__ - A refreshingly simple data-driven game engine built in Rust [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/bevyengine/bevy) ![bevyengine/bevy](https://img.shields.io/github/stars/bevyengine/bevy.svg?style=flat&label=Star&maxAge=86400)
* __Bones__ - An easy-to-use game engine for making real games [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/fishfolk/bones) ![fishfolk/bones](https://img.shields.io/github/stars/fishfolk/bones.svg?style=flat&label=Star&maxAge=86400)#### Zig
* __mach__ - Game engine & graphics toolkit for building high-performance, truly cross-platform, robust & modular games, visualizations, and desktop/mobile GUI apps [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/hexops/mach) ![hexops/mach](https://img.shields.io/github/stars/hexops/mach.svg?style=flat&label=Star&maxAge=86400)
### Graphics Engines
#### C++
* __bs::framework__ - Modern C++14 library for the development of real-time graphical applications [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/GameFoundry/bsf) ![GameFoundry/bsf](https://img.shields.io/github/stars/GameFoundry/bsf.svg?style=flat&label=Star&maxAge=86400)
* __The Forge__ - Cross-Platform Rendering Framework with support for PC Windows, Linux, Ray Tracing, macOS/iOS, Android, XBOX, PS4, PS5, Switch, Quest 2 [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/ConfettiFX/The-Forge) ![ConfettiFX/The-Forge](https://img.shields.io/github/stars/ConfettiFX/The-Forge.svg?style=flat&label=Star&maxAge=86400)### Physics libraries
#### C++
* __edyn__ - A real-time physics engine organized as an ECS [![GitHub](https://img.shields.io/badge/GitHub-grey)](https://github.com/xissburg/edyn) ![xissburg/edyn](https://img.shields.io/github/stars/xissburg/edyn.svg?style=flat&label=Star&maxAge=86400)
## Other Resources
### Benchmarks
* [ecs_benchmark](https://github.com/abeimler/ecs_benchmark): Benchmarks of common ECS (Entity-Component-System)-Frameworks in C/C++
* [ECS C# Benchmark](https://github.com/Doraku/Ecs.CSharp.Benchmark): Benchmarks of the main ECS Frameworks for: C#
* [ECS C# Benchmark - Common uses-cases](https://github.com/friflo/ECS.CSharp.Benchmark-common-use-cases): Benchmark many common use cases in the simplest and most performant variant
* [CSharpECSComparison](https://github.com/Chillu1/CSharpECSComparison): Benchmarks of common ECS Frameworks for C#### Blog Posts
* [Data-oriented design](http://gamesfromwithin.com/category/data-oriented-design)
* [ECS back and forth](https://skypjack.github.io/2019-02-14-ecs-baf-part-1/)
* [Let's build an Entity Component System from scratch](https://devlog.hexops.com/2022/lets-build-ecs-part-1/)
* [Entity Systems are the future of MMOG development](https://t-machine.org/index.php/2007/09/03/entity-systems-are-the-future-of-mmog-development-part-1/)
* [Building an ECS](https://ajmmertens.medium.com/building-an-ecs-1-where-are-my-entities-and-components-63d07c7da742)
* [Systems Interaction in Entity-Component-System (events)](https://medium.com/@ben.rasooli/systems-interaction-in-entity-component-system-events-4a050153c8ac)
* [Overview of ECS variants & definitions](https://gist.github.com/LearnCocos2D/77f0ced228292676689f)
* [Understand data-oriented design](https://learn.unity.com/tutorial/part-1-understand-data-oriented-design)
* [Unity ECS series](https://gametorrahod.com/tag/unity-ecs/)
* [Seba's Lab](https://www.sebaslab.com/)### Talks & Slides
* [itCppCon19: ECS back and forth](https://youtu.be/WB5bRKKGRUk)
* [GDC 2018: Unity at GDC - A Data Oriented Approach to Using Component Systems](https://youtu.be/p65Yt20pw0g)
* [Meeting C++ 2018: Data oriented design in practice](https://youtu.be/NWMx1Q66c14)
* [CppCon 2018: Stoyan Nikolov “OOP Is Dead, Long Live Data-oriented Design”](https://youtu.be/yy8jQgmhbAU)
* [Data Oriented Design Resources](http://aras-p.info/texts/files/2018Academy%20-%20ECS-DoD.pdf)
* [Data Oriented GUI in Rust](https://www.youtube.com/watch?v=4YTfxresvS8)
* [Is There More to Game Architecture than ECS](https://www.youtube.com/watch?v=JxI3Eu5DPwE) - Bob Nystrom (Roguelike Celebration 2018)
* [Unite 2018: C# Job System + ECS usage and demo with Intel](https://www.youtube.com/watch?v=fp1D45hhVEM)
* [Codestar 2018 ECS - A Different Approach to Game Development](https://www.youtube.com/watch?v=lt4eL4RSx7k)
* [CppCon 2014: Mike Acton "Data-Oriented Design and C++"](https://youtu.be/rX0ItVEVjHc))### Books
* [Data-Oriented Design](http://www.dataorienteddesign.com/dodbook/)
### Tutorials
* [Starting a new 2D platformer with ECS](https://www.youtube.com/playlist?list=PLWtPciJ1UMuAoCq8NAw8J-n387U4QHFBW)
### Lists
* [Entity Component System & Data Oriented Design](https://github.com/dbartolini/data-oriented-design)
### ETC
* [Entity Systems Wiki](http://entity-systems.wikidot.com/)
* [Entity Component Systems FAQ](https://github.com/SanderMertens/ecs-faq)