Skip to content

About

😎 A curated list of Entity-Component-System (ECS) libraries and resources

Topics

Resources

Contributing

Stars

703 stars

Watchers

20 watching

Forks

Latest commit

Β 

History

112 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Awesome ECS

Awesome

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#

Common Lisp

Elixir

Python

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

Haskell

  • 🟒 apecs - A fast, extensible, type driven Haskell ECS framework for games. ⭐ 425
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.

C++

Go

  • 🟑 Engo - A cross-platform game engine written in Go following an interpretation of the Entity Component System paradigm. ⭐ 1.8k

Rust

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
  • πŸ’€ 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.

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.

Star History Chart

CC0

About

😎 A curated list of Entity-Component-System (ECS) libraries and resources

Topics

Resources

Contributing

Stars

703 stars

Watchers

20 watching

Forks

Releases

Packages

Used by

Contributors

Languages