Skip to content

An exploration of ECS architecture and TDD in Rust game development using the Bevy engine. Featured in a popular blog post.

Notifications You must be signed in to change notification settings

donedgardo/rusty_game

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

66 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Rusty Game 🦀🎮

Overview

Rusty Game is a game development project that serves as a playground for learning and practicing the Entity-Component-System (ECS) architecture using the Bevy game engine in Rust. This project is also an exploration of Test-Driven Development (TDD) in Rust game development.

🔗 Blog Post: TDD in Rust Game Engine Bevy

Table of Contents

Technologies

Rust 🦀

  • File: Cargo.toml, src/lib.rs, src/main.rs
  • Purpose: Rust is used for the game logic, offering memory safety and high performance. The project uses Rust's package manager, Cargo, to manage dependencies and build the project.

Bevy 🎮

  • File: src/main.rs, src/components.rs, src/systems.rs
  • Purpose: Bevy is a data-driven game engine built in Rust. It's used here to implement the ECS architecture, providing a flexible and efficient framework for game development.

TDD 🧪

  • File: Collocated with code modules
  • Purpose: Test-Driven Development (TDD) is used to ensure the quality and correctness of the game logic. Unit tests are collocated with the code modules, as per Rust standards.

Getting Started

  1. Clone the Repository

    git clone https://github.com/donedgardo/rusty_game.git
  2. Install Rust

    curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
  3. Run the Project

    cargo run 

Usage

To play the game, simply run cargo run after cloning and setting up the project.

Contributing

Feel free to contribute to this project. Fork it, create a new branch, commit your changes, and create a pull request.

License

This project is licensed under the MIT License.


Created by Edgardo Carreras to explore and demonstrate the capabilities of Bevy and TDD in Rust game development.

About

An exploration of ECS architecture and TDD in Rust game development using the Bevy engine. Featured in a popular blog post.

Resources

Stars

Watchers

Forks

Packages

No packages published