Files

Forge Demo

A tiny Bevy 0.20 project used as the demo project for Bevy Forge, the visual scene editor for Bevy BSN scenes. It contains two editable scenes and a small set of generated pixel-art textures.

Open it in Bevy Forge

From the repository root:

cargo run -p bevy_forge_editor -- examples/demo-project

Bevy Forge discovers the Bevy project from Cargo.toml, scans assets/ and opens the first scene automatically. Open the other scene from the File menu, edit entities in the hierarchy/inspector, and save with Ctrl+S. Use Export (or the forge CLI) to turn a scene into paste-ready BSN Rust code or imperative Commands::spawn code.

Scenes

Scene Contents
scenes/garden.forge.ron 3D garden: camera, sun, point light, ground plane, shrub, flower, lantern post and an orbiting crystal with the custom forge_demo::Orbit component.
scenes/platformer.forge.ron 2D platformer: camera, dusk background, ground tiles, floating ledge, player with a hat child, coins, crates and two Text2d labels.

Both scenes are plain RON and human-readable. Every referenced texture exists in assets/textures/.

Textures

All textures are procedurally generated (no external art, no network):

File Size
assets/textures/background.png 960x540
assets/textures/player.png 64x96
assets/textures/hat.png 64x32
assets/textures/tile.png 96x96
assets/textures/coin.png 64x64
assets/textures/crate.png 64x64

Regenerate them with Pillow:

python3 examples/demo-project/tools/generate_textures.py

Running it as a Bevy app

src/main.rs is a minimal Bevy app. The .forge.ron scenes are editor documents, not Bevy runtime assets yet, so paste an export into src/main.rs to run it. The custom Orbit component used by the garden scene is defined there as forge_demo::Orbit { radius, speed }, matching the exported BSN path.

This demo is deliberately not a member of the editor workspace: only the excluded compat/bsn-smoke crate may depend on Bevy.