Open-Source Wikis

/

Bevy

/

Bevy

bevyengine/bevy

Bevy

Bevy is a refreshingly simple, data-driven game engine written in Rust. It is free, open source, dual-licensed under MIT and Apache 2.0, and developed entirely on GitHub at bevyengine/bevy.

This wiki is a code-level companion to the official Bevy book. It explains how the workspace is laid out, what each crate does, and where to make changes when you contribute. For tutorials and high-level concept explanations, prefer the official book.

What Bevy is

Bevy is a complete 2D and 3D game engine. Out of the box it gives you:

  • An archetypal Entity Component System (bevy_ecs) with parallel scheduling and change detection.
  • A modular plugin system (bevy_app) — every feature is a plugin you can add or remove.
  • A wgpu-based renderer (bevy_render, bevy_pbr, bevy_core_pipeline) targeting Vulkan, Metal, DX12, and WebGPU/WebGL2.
  • An asset pipeline (bevy_asset) with hot reloading and a glTF loader (bevy_gltf).
  • A windowing layer (bevy_winit, bevy_window), input (bevy_input, bevy_gilrs), audio (bevy_audio), and an immediate-mode-ish UI (bevy_ui).
  • Reflection (bevy_reflect), serialization (bevy_world_serialization, bevy_scene), and runtime debugging (bevy_dev_tools, bevy_remote).

A minimal Bevy app looks like this — every feature beyond App::new() and the chosen plugins is opt-in:

use bevy::prelude::*;

fn main() {
    App::new()
        .add_plugins(DefaultPlugins)
        .add_systems(Update, hello_world_system)
        .run();
}

fn hello_world_system() {
    println!("hello world");
}

How this wiki is organized

Section What's there
Architecture The big picture: workspace layout, the App lifecycle, render flow, frame loop.
Getting started Toolchain setup, building, running examples, Linux/macOS/Windows/web/mobile.
Glossary Bevy-specific vocabulary (App, World, Schedule, System, Component, Resource, Asset, etc).
By the numbers Codebase size, language mix, churn, contributor activity.
Lore A timeline of how Bevy got here, from the 0.1 release through the SubApp era.
Fun facts Trivia, oldest code, longest files, naming origins.
How to contribute Workflow, testing, debugging, conventions, tooling.
Packages One page per crates/bevy_* crate (60+). The center of gravity of this wiki.
Features Cross-cutting capabilities (rendering pipeline, scenes, picking, animation, UI, etc.).
Primitives Foundational ECS concepts (Entity, Component, World, Schedule, etc.).
API The Bevy Remote Protocol (BRP) — Bevy's external JSON-RPC interface.
Reference Cargo features, dependencies, configuration.

Where to start

Project status

Bevy is pre-1.0. The version in this checkout is 0.19.0-dev (see the workspace Cargo.toml). Releases happen roughly every three months on what the project calls "the train release schedule," and each release ships breaking changes paired with a published migration guide. The MSRV tracks recent stable Rust closely (currently 1.95.0).

Bevy is built and maintained by a community of around 1,500 contributors. The Bevy Foundation (a non-profit) owns the trademark and accepts donations, but development happens in the open via GitHub PRs reviewed by the Bevy maintainers.

Built by Factory AutoWiki from public repository content. It is a generated preview for codebase exploration, not source-maintained documentation.

Bevy – Bevy wiki | Factory