finds.dev← search

// the find

SanderMertens/flecs

★ 8,737 · C · NOASSERTION · updated Oct 2026

A fast entity component system (ECS) for C & C++

flecs is a zero-dependency Entity Component System for C and C++, aimed at game and simulation developers who need to push large entity counts (millions) through per-frame logic. It targets people building their own engine or game framework from scratch rather than those using Unity/Unreal, since it's a low-level building block, not a full engine.

The archetype/SoA storage model is genuinely fast and the project backs that claim with public CI running 13000+ tests across compilers and platforms. Entity relationships are a real differentiator — most ECS libraries only do flat components, and flecs builds hierarchies, prefabs, and inheritance directly on top of relationships instead of bolting them on. The reflection addon with JSON serialization plus the web-based Explorer UI means you get runtime introspection into a running C/C++ world without writing your own debug tooling, which is unusual for a systems-level library. The C++ API avoids STL containers entirely, which matters if you're already avoiding STL for compile-time or ABI reasons.

The C API leans heavily on ECS-specific vocabulary (archetypes, queries, traits, relationships) and the README's one-line examples undersell how much conceptual overhead there is before you're productive — expect to spend real time in the Manual docs. Non-C/C++ bindings (C#, Rust, Lua, Zig) are explicitly community-maintained and the README itself warns they may lag master, so if you're not writing C/C++ directly you're betting on a third party keeping pace. The flecs-hub modules (transform, physics, rendering) that would normally round this out into something closer to a usable game framework look thin and separately maintained, so adopting flecs for anything beyond raw ECS mechanics means building or sourcing the rest yourself. It's also effectively a single-maintainer project (Sander Mertens), which is fine today given the commit cadence but is a bus-factor risk worth knowing about before building a shipping game on it.

View on GitHub → Homepage ↗

// 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 →