1 unstable release

0.1.0 Dec 2, 2024

#1993 in Game dev

Download history 99/week @ 2024-12-11 97/week @ 2024-12-18 87/week @ 2024-12-25 70/week @ 2025-01-01 55/week @ 2025-01-08 98/week @ 2025-01-15 50/week @ 2025-01-22 43/week @ 2025-01-29 72/week @ 2025-02-05 20/week @ 2025-02-12 15/week @ 2025-02-19 20/week @ 2025-02-26 10/week @ 2025-03-05 24/week @ 2025-03-12 10/week @ 2025-03-19 15/week @ 2025-03-26

65 downloads per month
Used in bevy_remote_inspector

MIT license

34KB
599 lines

Crates.io Versiondocs.rs

Bevy Remote Inspector

A remote inspector for Bevy game engine, allowing you to inspect and modify entities in real-time. Alternative to bevy-inspector-egui.

Features

  • Entity hierarchy tree view, including drag and drop to update parent-child relationships.
  • Inspector showing entity's components and their properties, including adding/removing components. Capable of rendering and editing deeply nested Rust types (custom serialization/deserialization types may not work as expected).
  • Allow to toggle components on/off (work by temporarily removing the component from the entity).
  • Automatically reconnect when your Bevy app restarts.

https://github.com/user-attachments/assets/adf9c68c-ddbf-40a9-aedc-06006e574a15

Installation

  • bevy_remote_inspector currently require Bevy version 0.15.0.
cargo add bevy_remote_inspector

Usage

  • Add RemoteInspectorPlugins to your Bevy app.
use bevy_remote_inspector::RemoteInspectorPlugins;

fn main() {
    App::build()
        .add_plugins(DefaultPlugins)
        .add_plugins(RemoteInspectorPlugins)
        .run();
}
  • Then open https://bevy-remote-inspector.pages.dev/ in your browser and enter the default WebSocket URL ws://localhost:3000.
  • If you need to change the port you can import individual plugins and configure them.
use bevy_remote_inspector::{
    stream::{websocket::RemoteStreamWebSocketPlugin, RemoteStreamPlugin},
    RemoteInspectorPlugin,
};

fn main() {
    App::build()
        .add_plugins(DefaultPlugins)
        .add_plugins((
            RemoteStreamPlugin::default(),
            RemoteStreamWebSocketPlugin::default().with_port(1234),
            RemoteInspectorPlugin,
        ))
        .run();
}

Development

  • Run the example
cargo run --p example_simple
  • Run the web client
pnpm run dev

Bevy compatibility

bevy_remote_inspector bevy
0.1.0 0.15.0

Dependencies

~62–100MB
~2M SLoC