A downloadable game

🔎 Overview

brkrs is a Breakout/Arkanoid-style game written in Rust 🦀 using the Bevy engine. It extends the classic formula with richer physics, gravity, paddle rotation, and per-level configuration.

  • 🧱 Classic Breakout-style gameplay: paddle, ball, bricks, and levels
  • 🖱️ Controls: move paddle with mouse, scroll wheel to rotate.
  • 👀 Levels are human-readable and easy to modify
  • 📦 Crate-ready and cross-platform (desktop + WebAssembly builds)
  • 🥳 A fun, approachable way to learn Rust, Bevy, and modern coding practices

Gameplay Screenshot

It’s also a hands-on learning project, letting you explore:

  • 📝 Spec-first development with GitHub speckit
  • 🤖 AI-assisted and agentic coding experiments
  • 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

Every feature starts as a spec, flows through an issue or PR, and ends as working Rust code. You can play the game, explore the code, and learn modern Rust/Bevy workflows all at the same time. Play, tweak, and learn — modify levels, bricks, or mechanics to see specs turn into features.

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.

🔗 Quick links

Full documentation is available at brkrs.readthedocs.io:


🎓 Learning Path & Contribution

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

  1. Read a spec in the repo or wiki
  2. Pick a small issue to implement
  3. Submit a PR that fulfills the spec
  4. Experiment with AI-assisted features or gameplay tweaks

Follow “Seika no Ho” (清華の法), “the way of clear planning”, a Samurai principle for strategic planning that aligns actions with values.

🤩 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 a hands-on, playful way

📜 The Story Behind brkrs

I always wanted to rewrite my old Arkanoid/Breakout-style game, YaAC 🐧, in a modern game framework.

I began by manually 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 involve a steep learning curve and a lot of time.

brkrs was born as a solution: a way to learn modern Rust game development, apply spec-first workflows, and experiment with AI-assisted coding, all while still having fun playing a real game.

The development process follows the “Kaizen no michi” (改善の道) philosophy of making small, incremental changes to achieve long-term growth and success.

⚙️ 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).

📣 Help Wanted: Your Skills Can Level Up brkrs

While the code is solid, a great game needs more than just logic! We are actively looking for creative community members 🤗 to join the effort and help turn brkrs into a visually and aurally stunning experience.

This is your chance to get your work into a real, playable, open-source game!

  • 🎧 Sound & Music: We need satisfying sound effects (the thwack of a brick, the clink of a power-up) and engaging background music.
  • 🎨 Art & Textures: Help us create unique brick textures, stylish paddle designs, backgrounds, and other necessary artwork.
  • 📐 Level Design: Got an evil streak? Use the easy-to-modify level configuration files (RON) to create new, challenging, and fun level designs!
  • 🤔 Testing & Feedback: Simply playing the game and reporting bugs or suggesting balance tweaks is incredibly valuable!

If you’re a designer 🏛, artist 🖌, musician 𝄞, or a gamer 🕹️ with an eye 🧐 for detail, reach out or submit a Pull Request with your contributions!

Development log

Leave a comment

Log in with itch.io to leave a comment.