Repolode
bevyengine

bevyengine/bevy

A data-driven game engine written in Rust, built on an Entity Component System for 2D and 3D games.

Open-source alternative to:UnityUnreal Engine

Stars
49,200
Forks
4,956
Open issues
3,499
Last commit
19 hours ago

What is it?

Bevy is a game engine written in Rust that organizes game logic around an Entity Component System (ECS), where data lives in components attached to entities and behavior runs in systems. It aims to offer a complete 2D and 3D feature set while staying approachable for newcomers and flexible for experienced developers.

The engine is modular: you can enable only the parts you need through Cargo features, or replace individual pieces you don't like. Its app logic is designed to run in parallel where possible, and the project emphasizes fast compile times, with an optional setup for quicker iterative builds.

Bevy is dual-licensed under MIT and Apache-2.0. It is still in early development, and its API changes with a new release roughly every three months, with migration guides provided for each version.

Key features

  • 01Entity Component System architecture for data-oriented game logic
  • 02Complete 2D and 3D feature set
  • 03Modular design where unused parts can be disabled via Cargo features
  • 04Parallel execution of app logic where possible
  • 05Runnable official examples covering specific concepts

Use cases

  • Building 2D or 3D games in Rust
  • Prototyping gameplay systems with an ECS-based architecture
  • Learning ECS concepts through runnable examples
  • Creating custom engine tooling or plugins on a modular base

Quick start

  1. 1

    Follow the setup guide to prepare your Rust development environment

  2. 2

    Clone the repository and switch to the latest release

    git checkout latest
  3. 3

    Run the breakout example

    cargo run --example breakout

Things to know

  • Bevy is in early development, with missing features and sparse documentation.
  • Breaking API changes are released roughly every three months, so upgrades may require migration work.
  • Bevy relies on a recent stable Rust toolchain, so older compilers are not supported.

In collections

Topics

FAQ

What is bevy?
A data-driven game engine written in Rust, built on an Entity Component System for 2D and 3D games. Bevy is a game engine written in Rust that organizes game logic around an Entity Component System (ECS), where data lives in components attached to entities and behavior runs in systems. It aims to offer a complete 2D and 3D feature set while staying approachable for newcomers and flexible for experienced developers.
Is bevy free to use? What license does it have?
bevy is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
Is bevy still maintained?
Actively maintained. The last commit to bevy was on Oct 21, 2026.
What can I use bevy for?
Building 2D or 3D games in Rust Prototyping gameplay systems with an ECS-based architecture Learning ECS concepts through runnable examples Creating custom engine tooling or plugins on a modular base
How do I install bevy?
Follow the setup guide to prepare your Rust development environment Clone the repository and switch to the latest release: git checkout latest Run the breakout example: cargo run --example breakout
Where can I get bevy?
The source code and installation instructions are on GitHub: https://github.com/bevyengine/bevy

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects