11 releases

Uses new Rust 2024

0.0.7 Oct 7, 2025
0.0.6 Jul 25, 2025
0.0.6-rc.1 Apr 26, 2025
0.0.5 Mar 8, 2025
0.0.4-rc.1 Jul 27, 2024

#2236 in Game dev

Download history 137/week @ 2025-07-22 13/week @ 2025-07-29 2/week @ 2025-08-05 1/week @ 2025-08-12 19/week @ 2025-08-19 18/week @ 2025-08-26 43/week @ 2025-09-02 22/week @ 2025-09-09 13/week @ 2025-09-16 18/week @ 2025-09-23 29/week @ 2025-09-30 192/week @ 2025-10-07 61/week @ 2025-10-14 43/week @ 2025-10-21 21/week @ 2025-10-28 6/week @ 2025-11-04

134 downloads per month
Used in 10 crates (6 directly)

MIT/Apache

365KB
9K SLoC

beet_flow

Beet Flow is an ECS control flow library built with Bevy Observers. The ECS architecture allows for a growing list of paradigms to be used interchangably:

Hello World

A demonstration of a Sequence control flow common in behavior trees.

use beet_flow::prelude::*;
use beet_core::prelude::*;

let mut app = App::new();
app.add_plugins((
	// manages action lifecycles
	BeetFlowPlugin::default(),
	// this will log the name of each action as it is triggered.
	DebugFlowPlugin::default()
));

app.world_mut()
	.spawn((
		Name::new("My Behavior"),
		Sequence,
		children![
			(
				Name::new("Hello"),
				EndWith(Outcome::Pass),
			),
			(
				Name::new("World"),
				EndWith(Outcome::Pass),
			),
		],
	))
	.trigger_action(GetOutcome)
	.flush();

Dependencies

~41–87MB
~1.5M SLoC