// the find
amethyst/legion
High performance Rust ECS library
Legion is an archetype-based ECS for Rust game development, using tuple queries and a proc-macro system to express parallelizable work with minimal ceremony. It sits between the lower-level hecs and the full Bevy ECS in terms of ergonomics. The target audience is Rust game developers who want schedule-driven parallelism without rolling their own.
Archetype storage layout means component iteration is cache-friendly by design, which is the right call for game loops. The schedule automatically infers parallelism from system resource declarations — you don't hand-thread anything. Query filters (maybe_changed, boolean composition) are expressive and typed at compile time. WASM support is handled by feature-flagging out rayon rather than pretending it works.
Dead since December 2021 — the amethyst org collapsed and legion was never adopted by Bevy (which uses its own fork). You'd be adopting an unmaintained library in a space where Bevy ECS is the living, actively developed alternative. The book docs stop at chapter 2 of a clearly unfinished guide, so learning beyond the README means reading the source or docs.rs. Serialization support exists but requires manually registering every component type — the ergonomics are rough for anything beyond trivial worlds. Change detection is documented as 'conservative and coarse-grained', meaning false positives on maybe_changed are expected and you'll work around it.