The documentation is available at brkrs.readthedocs.io:
- ๐ฎ Play the web version โ Try it now! ๐พ
- ๐ Quickstart Guide โ Get running in 10 minutes ๐
- ๐ ๏ธ Developer Guide โ Contribute to the project ๐ค
- ๐ API Reference โ Rust API documentation โ๏ธ
- ๐ฎ GitHub โ ๐ง๐ปโโ๏ธ Here is where the magic happens ๐ช
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. Instead of bouncing the ball upward from a paddle that only moves sideways at the bottom of the screen, like a traditional Breakout clone, brkrs lets you:
- ๐งฑ Classic Breakout-style gameplay: paddle, ball, bricks, and levels
- ๐ฑ๏ธ Controls: Move your paddle with the mouse freely anywhere on the screen (not just along the bottom), scroll wheel to rotate. Intercept the ball from any direction; above, below, or from the side
- ๐ Play through 70+ levels with varied layouts and challenges. Levels are human-readable and easy to modify
- ๐ต Encounter many different brick types with special behaviors (things like gravity effects, magnets, teleporters, explosive bricks, and more), which make the puzzles more complex than simple ball-bouncing.
- ๐ฆ Crate-ready and cross-platform (desktop + WebAssembly builds)
Itโs also a hands-on learning project, letting you explore:
- ๐ Spec-first development with GitHub speckit
- ๐ค AI-assisted and agentic coding experiments
- ๐ฅณ A fun, approachable way to learn Rust, Bevy, and modern coding practices
Every feature starts as a spec, flows through an issue (recommended) or directly via PR (if you are bold), 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.
This project is intended to be fun and educational. Suggested learning steps:
- Read a spec in the repo or wiki
- Pick a small issue to implement
- Submit a PR that fulfills the spec
- 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.
- 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
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, walls).
It quickly became clear that doing everything manually would involve a steep learning curve and a lot of time.
brkrs was born as 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.
- Physics (Rapier3D) โ 3D physics constrained to a flat play plane.
- Game State โ (planned) menu, playing, paused, game over, transitions.
- Level Loader โ RON file parsing, entity spawning, per-level gravity.
- Brick System โ Extensible brick behaviors via components & events.
- Pause System โ ESC to pause, click to resume, with window mode switching (native).
While the code is coming along nicely, a great game needs more than just logic! We are actively looking for creative community members to join ๐ค 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!
The GNU Affero General Public License is a free, copyleft license for software and other kinds of works, specifically designed to ensure cooperation with the community. It ensures that any code snippet developed by the open-source community stays available and prevents others from repackaging and selling open-source software without giving back.
This guarantees your freedom to share and change all versions of this program and makes sure it remains free software for all its users.

