What problem does it solve?
This skill enables teams to architect and maintain hot-reloadable Flecs modules as Rust dylibs, allowing updates to module logic without restarting the Flecs world and enabling clean boundaries between components and systems.
Core Features & Use Cases
- Component modules define components/singletons only, no systems;
- System modules import component modules and define systems that operate on them;
- Supports hot-reload of systems without breaking component data;
- Enables multiple system modules to share the same components;
- Provides a clear module structure and Cargo-based dependencies as demonstrated in the example layout.
Example Structure
(The example structure is described in the SKILL.md)
crates/module/
βββ time-components/ # WorldTime, TpsTracker (components only)
βββ time-systems/ # Systems that tick WorldTime (imports time-components)
βββ network-components/ # Connection, PacketBuffer, etc.
βββ network-systems/ # Ingress/egress systems
βββ play/ # Game systems (imports time-components, network-components)
Quick Start
Create a new hot-reloadable Flecs module following the example structure and module interface.