bevy_xray_parser 0.1.0

Parse Bevy source code to extract state hierarchies, plugin dependencies, and schedule configurations
Documentation

CI crates.io License: MIT OR Apache-2.0 Rust: 1.85+

A static analysis tool that visualizes Bevy game engine internals — state hierarchies, plugin dependencies, schedule configurations, and system set ordering.

Screenshots

Features

  • State Hierarchies — Extracts States, SubStates, and ComputedStates with their relationships
  • Plugin Dependencies — Maps plugin registrations, sub-plugins, and plugin groups
  • Schedule Configurations — Parses Update, FixedUpdate, and custom schedules with system ordering
  • System Sets — Tracks set definitions and ordering constraints (before, after, chain)
  • Multiple Output Formats — Interactive TUI, JSON export, and self-contained HTML visualization

Installation

cargo install bevy_xray

Usage

Point bevy-xray at a Bevy workspace:

# Launch interactive TUI
bevy-xray --path /path/to/bevy/workspace

# Export as JSON
bevy-xray --path /path/to/bevy/workspace --json

# Export as self-contained HTML
bevy-xray --path /path/to/bevy/workspace --html > output.html

# Use a different theme (rose-pine, moon, dawn)
bevy-xray --path /path/to/bevy/workspace --theme dawn

CLI Options

Flag Description Default
--path Path to Bevy workspace root .
--json Export as JSON
--html Export as self-contained HTML
--theme Color theme: rose-pine, moon, dawn rose-pine

Compatibility

bevy_xray bevy
0.1 0.18

Note: bevy_xray uses static analysis using syn, so it may need updates when Bevy introduces new API patterns.

Project Structure

crates/
├── bevy_xray/          # TUI application and CLI
└── bevy_xray_parser/   # Static analysis and parsing library

License

Licensed under either of

at your option.