
Bevy 0.17 is out
2025-09-29
Bevy 0.17 is out!

Showcase
Bevy work from the #showcase channel in Discord and around the internet. Use hashtag #bevyengine.


Migrating to bevy_rts_camera
showcase
A migrated camera system that now uses bevy_rts_camera. The demo shows off looking at a number of star types.

CPU Egui render backend
showcase
a CPU software render backend for egui! (bevy
/bevy_egui
example integration included)


Crates
New releases to crates.io and substantial updates to existing projects
Bevy Replicon 0.35.0
crate_release
bevy_replicon is a crate for server-authoritative networking.
0.35 brings revamped examples and new features like an Unreal Engine Iris inspired priority system and Replication Filters.
bevy_cli v0.1.0-alpha.2
crate_release
The Bevy CLI is a command-line tool hacked on by the bevy_cli working group that streamlines work on projects. This release includes key improvements such as:
- Automatically configuring the correct
getrandom
backend when building a project for the web - Easily listing and installing specific versions of the Bevy Linter
- Unstable support for enabling web multi-threading, useful when depending on crates like
bevy_seedling
- Faster compile times and improved template support by relying on
cargo-generate
in its executable form, rather than bundling it as a library - Many bug fixes, small quality-of-life changes, and documentation improvements
You can find the live documentation for this release here. You may also be interested in the changelog and the migration guide.
You can install the CLI using:
cargo install --git https://github.com/TheBevyFlock/bevy_cli --tag cli-v0.1.0-alpha.2 --locked bevy_cli
bevy_mod_scripting 0.16
crate_release
bevy_mod_scripting represents an initial attempt to enable scripting within Bevy's existing framework
bevy_immediate
crate_release
bevy_immediate, a UI library for Bevy that introduces an immediate mode approach to UI construction while leveraging Bevy’s ECS-powered retained UI.
Add data-driven rendering release note. authored by tychedelia
Improve migration guide for Sprite anchor changes authored by alice-i-cecile
Add release notes for new Sun Disk feature authored by alice-i-cecile
Add release notes for per-side UI border colors authored by alice-i-cecile
Safe `deconstruct_moving_ptr` authored by chescock
`TypedReflectDeserializer`: return a concrete value when possible authored by SkiFire13
Detailed migration guide for automatic reflection registration authored by alice-i-cecile
Borders example cleanup authored by ickshonpe
enable required transitive features on docs.rs authored by mockersf
enable calculating the Transform of a tile authored by ChristopherBiscardi
move gltf examples to gltf category authored by ChristopherBiscardi
`UiGlobalTransform` helper methods authored by ickshonpe
add helper to get tile_data_from_tile_pos from tilemapchunktiledata authored by ChristopherBiscardi
BRP allow spawning/inserting Components with only `Reflect` authored by Leinnan
Bevy 0.17 release notes editorial pass authored by cart
`JustifySelf` doc comment edit authored by ickshonpe
Fix typo authored by hukasu
Removes redundant LLD configuration for x86_64-unknown-linux-gnu authored by noahsabaj
Updated feathers example to permit toggling of disable state. authored by viridia
Improve searchability of wgpu 25 migration authored by alice-i-cecile
Bump crate versions to 0.18.0-dev authored by james7132
Migration guide for the `stack_index` to `z_order` change. authored by ickshonpe
Add `serialize` method to `ReflectSerialize` (bevy_reflect) authored by Mysvac
Change `ImageRenderTarget`'s `scale_factor` to an `f32` authored by ickshonpe
Added required components to InheritableFont and ThemeFontColor authored by viridia
Change default for `ExecutorKind` when `std` feature is off authored by hukasu
Adds migration instructions for old zstd feature. authored by noahsabaj
Revived #18741, Remove `SimpleExecutor`. authored by ElliottjPierce
Migration guide `SpawnableList` and `DynamicBundle` authored by janis-bhm
get_random migration guide polish: round two authored by alice-i-cecile
Fix docs on `Query::single_inner()` saying it panics authored by BD103
chore: update encase to 0.12 authored by fundon
Fix release content heading metadata syntax authored by cart
implement `Add`, `Sub`, and `Mul<f32>` for `BorderRect` authored by ickshonpe
Add UiDebugOptions to type registry authored by mirsella
`Val` constructors test authored by ickshonpe
Fix serialize feature always activating bevy_render authored by janhohenheim
`NonSendMut` alias authored by janis-bhm
Fix animation crate typo from resume to pause authored by torsteingrindvik
Add two basic tests for asset hot reloading. authored by andriyDev
Fix assets not reloading on AddedAsset event authored by dloukadakis
Print `Name` in `validate_parent_has_component` authored by Zeophlite
add methods to *EntityMut to UnsafeEntityCell as an escape hatch authored by hymm
Fix typo in gradient types link authored by akimakinai
Log reloads only when an asset has been reloaded authored by dloukadakis
Fix chrome rendering bug authored by atlv24
Update subsecond to 0.7.0-rc.0 authored by cart
Want to contribute to Bevy?
Here you can find two types of potential contribution: Pull Requests that might need review and Issues that might need to be worked on.
Pull Requests Opened this week
Remove X11 as a default feature authored by james7132
Add dragged field to pointer click and release authored by Maksych
Expand CI tools authored by hukasu
(rustc 1.91) fix reflect type paths with generic lifetimes authored by janis-bhm
rem units support authored by ickshonpe
Allow querying multiple components from FilteredEntityMut authored by cBournhonesque
`ComputedTextStyle` authored by ickshonpe
Remove `line_height` from `TextFont` authored by ickshonpe
Update checkout command in examples README to v0.16.1 authored by neiesc
Add BindGroupLayout caching via descriptors authored by Zeophlite
Send the entire loaded asset instead of decomposing it on the loader task. authored by andriyDev
Free unused font atlases authored by ickshonpe
anchor layout example authored by ChristopherBiscardi
enable bevy_dev_tools by default authored by mockersf
easy screenshot plugin authored by mockersf
Remove `TextSpan` authored by ickshonpe
Make Entity construction more ergonomic authored by Shatur
run codeql on PRs authored by mockersf
Easy demo recording authored by mockersf
Remove redundant `$arg: ident` of the `impl_typed_function` macro authored by Mysvac
Add Custom SubApp example authored by radiantgurl
Fix crash with RenderDiagnosticsPlugin on mac authored by akimakinai
Easy screenrecording plugin authored by mockersf
Issues Opened this week
Check for transitive features in CI to avoid docs.rs failures authored by alice-i-cecile
Using behavior trees for a scripting language in the potential bevy editor? authored by Shadowblitz16
Rethinking Font Propagation authored by viridia
Main branch fails to compile on Rust beta. authored by github-actions[bot]
log diagnostics example crash on mac due to `RenderDiagnosticsPlugin` authored by foxzool
Allow image decoding to be switched out in bevy_gltf authored by jf908
The frame time graph enabling is *weird* authored by janhohenheim
Allow cycles in required components authored by cBournhonesque
`Val::Em` variant authored by ickshonpe
`Val::Rem` variant authored by ickshonpe
Add support to `bevy_ui` for units relative to font sizes authored by ickshonpe
Add explaination of what `a valid system configuration` is authored by mamekoro
Examples inner documentation and a Bevy Learning Path authored by The5-1
Free unused font atlases authored by ickshonpe
Compressed UI nodes that are not a multiple of 4 cause hard to read errors on WebGPU authored by janhohenheim
Feathers needs better examples authored by alice-i-cecile
FeathersPlugin and FeathersPlugins are easily confused. authored by alice-i-cecile
Delete subassets; only asset processing! authored by andriyDev
Transform requires GlobalTransform, causing subtle bugs authored by msvbg
Assertion that run conditions are `Send` does not work in most cases authored by urben1680
Inaccurate `Time<Real>`, missed `FixedUpdate` authored by dubrowgn
Remove `TextSpan`s authored by ickshonpe
Logic in `reload_internal` is confusing and needs to be commented authored by alice-i-cecile
Investigate why moving view transformations broke rendering on Chrome authored by alice-i-cecile
Document that chained `.run_if(a).run_if(b)` don't short-circuit, in contrast to `run_if(a.and(b))` authored by janhohenheim
Css grid cell spanning (GridPlacement) produces incorrect layout authored by PPakalns