finds.dev← search

// the find

sschmid/Entitas

★ 7,659 · C# · MIT · updated Dec 2023

Entitas is a super fast Entity Component System (ECS) Framework specifically made for C# and Unity

Entitas is a mature ECS framework for C# and Unity, built around the idea that data (components) and logic (systems) should be completely separate. It's for Unity game developers who want predictable, testable game logic and are willing to invest in the ECS mental model upfront.

The code generator is the real selling point — it turns plain C# component definitions into type-safe extension methods, so you get `entity.AddPosition(...)` instead of `entity.AddComponent(ComponentIndex.Position, pos)`. Groups provide O(1) entity queries by maintaining pre-filtered sets that update as components change, which is genuinely fast for large entity counts. The Visual Debugging Unity integration is production-quality: you can inspect every context, entity, and component in the editor at runtime without any manual instrumentation. Battle-tested at real studios (Wooga, Plarium) across shipped games.

Last commit was December 2023 and the Unity Package Manager support is still listed as 'Coming soon' — that's a red flag for long-term maintenance. The code generator adds a mandatory build step and a non-trivial learning curve; small teams often find the ceremony disproportionate to the benefit for games with fewer than a few hundred entity types. No built-in support for multithreading or job system integration, which matters if you're targeting Unity's DOTS-adjacent performance goals — for that you'd need to switch to Unity's own ECS, which has largely eaten this space. The context/component count setup is static and defined at compile time, so adding a new context to a large project requires running the generator and can produce messy merge conflicts in generated files.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →