bevy-ecs-systems

Installation
SKILL.md

Bevy 0.19 — ECS Systems (params, sets, run conditions)

When to use this skill

  • Bundling related state into a single system parameter via #[derive(SystemParam)].
  • Grouping systems into a SystemSet so callers can order against the whole group.
  • Gating systems with run conditions (run_if, on_message, in_state, resource_exists, any_with_component).
  • Hooking into state transitions with OnEnter(S) / OnExit(S) / OnTransition { from, to }.
  • Hot-removing systems at runtime (e.g. tearing down a debug overlay) with remove_systems_in_set.
  • Hitting ScheduleBuildError ambiguity panics — the executor no longer guesses.

Canonical pattern

use bevy::ecs::system::SystemParam;
use bevy::prelude::*;

#[derive(SystemSet, Hash, PartialEq, Eq, Clone, Debug)]
enum GameLoop { Input, Simulate, Render }
Installs
33
GitHub Stars
13
First Seen
May 14, 2026
bevy-ecs-systems — chrisgliddon/bevy-skills