Image

Christian Ledermann: Game development with SpecKit, Rust and Bevy

brkrs — a fun, playable brick-breaker game & learning playground

brkrsis a real, playable Breakout/Arkanoid-style game written inRust🦀using theBevyengine.
It’s also ahands-on learning project, letting you explore:

  • Spec-first developmentwith GitHubspeckit
  • Incremental feature development through issues & PRs
  • AI-assisted and agentic coding experiments

Every feature starts as a spec, flows through an issue or PR, and ends as working Rust code. You canplay the game, explore the code, and learn modern Rust/Bevy workflows all at the same time.

Linus Torvalds said:“Talk is cheap. Show me the code.”

brkrs lets you play, tinker, and see the specs come alive in a real game.

The Story Behind brkrs

I always wanted torewrite my oldArkanoid/Breakout-style game, YaAC 🐧, in a modern game framework.

I began bymanually implementing the core gameplay foundations: reading documentation, following examples, and building a basic proof-of-concept with the essential mechanics (ball, paddle, bricks).

It quickly became clear that doing everything manually would involvea steep learning curve and a lot of time.

brkrs was born as a solution: a way tolearn modern Rust game development, applyspec-first workflows, and experiment withAI-assisted coding, all while still having fun playing a real game.

Try it now

You can play a web version onGitHub Pages

Key Features

brkrsis a Breakout/Arkanoid style game implemented in Rust with the Bevy engine. It extends the classic formula with richer physics, paddle rotation, and per-level configuration.

  • Classic Breakout-style gameplay: paddle, ball, bricks, and levels
  • Levels are human-readable and easy to modify
  • Spec-first workflow: every feature begins as a spec and ends as working Rust code
  • Small, incremental PRs demonstrate the development workflow and learning path
  • Crate-ready and cross-platform (desktop + WebAssembly builds)
  • Afun, approachable way to learn Rust, Bevy, and modern coding practices

Quickstart (play & learn)

Prerequisites: Rust + Cargo + Git

Controls: move paddle with mouse, scroll wheel to rotate (if enabled), ESC to pause.

Play, tweak, and learn — modify levels, bricks, or mechanics to see specs turn into features.

Core Systems

  1. Physics (Rapier3D)– 3D physics constrained to a flat play plane.
  2. Game State– (planned) menu, playing, paused, game over, transitions.
  3. Level Loader– RON file parsing, entity spawning, per-level gravity.
  4. Brick System– Extensible brick behaviors via components & events.
  5. Pause System– ESC to pause, click to resume, with window mode switching (native).

Learning Path & Contribution

This project is intended to befun and educational. Suggested learning steps:

  1. Read a specin the repo or wiki
  2. Pick a small issueto implement
  3. Submit a PRthat fulfills the spec
  4. Experimentwith AI-assisted features or gameplay tweaks

Documentation

Full documentation is available atbrkrs.readthedocs.io:

Why You’ll Enjoy It

  • Play a real game while learning coding practices
  • Watch specs transform into working features
  • Experiment safely with Rust, Bevy, and AI-assisted workflows
  • Learn by doing in ahands-on, playful way

https://dev.to/ldrscke/game-development-with-speckit-rust-and-bevy-86p