// the find
jakobhellermann/bevy-inspector-egui
Inspector plugin for the bevy game engine
bevy-inspector-egui puts an egui-powered inspector panel into your Bevy app with a few lines of code. You get live entity/component/resource editing at runtime without rebuilding, which is the main thing game devs need when tuning values. It's the de facto standard debugging tool for Bevy projects.
Tracks Bevy's release cadence aggressively — the version table goes back to Bevy 0.4 and 0.37 already targets 0.19, so you're not stuck waiting for a community crate to catch up. The layered API is well thought out: drop in WorldInspectorPlugin for instant results, or call the lower-level ui_for_world functions to build a custom dockable editor. InspectorOptions attributes (min/max, etc.) integrate cleanly with Bevy's Reflect derive, so field constraints live next to the field definition. The egui_dock integration example is genuinely useful — you get a multi-panel editor in under 100 lines without fighting the framework.
Hard Bevy version coupling means every Bevy minor release breaks your dependency tree; if you're on a Bevy fork or a version that isn't the latest, you're writing patches. The quick plugins have no runtime configuration — highlight_changes is a compile-time feature flag because 'it was implemented as a stopgap', which is honest but also means simple things like toggling change highlights require a rebuild. There's no built-in way to persist inspector state between sessions, so any values you tweak in the inspector vanish on restart unless you wire up your own serialization. Custom type display requires implementing InspectorPrimitive and calling register_type_data, which is more ceremony than expected for something as common as a custom vec2 widget.