donedgardo / rusty_game

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

Home Page:https://edgardocarreras.com/blog/tdd-in-rust-game-engine-bevy

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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.

https://edgardocarreras.com/blog/tdd-in-rust-game-engine-bevy


Languages

Language:Rust 89.9%Language:Roff 6.6%Language:JavaScript 2.9%Language:HTML 0.4%Language:CSS 0.3%