← Back to projects

Case file / Project 006

Color Columns

A falling block game I explored while learning Rust, now with a browser adaptation.

  • Rust
  • Game development
  • Learning project

The purpose

Why this project

I used Color Columns as a way to learn Rust. The original game was created by Rade Drmić and is shared under the MIT license.

The browser version brings the game into the portfolio with a darker noir look. More personal design and a hands-on reflection can follow.

The questions

The Questions Behind the Work

Draft questions for this project, open to revision as the work continues:

  1. How does the Rust game turn player input into movement and color changes?
  2. How are matching blocks detected and cleared?
  3. What changes are needed to make the game playable in a browser?
  4. How can a noir visual style fit the game while keeping it clear to play?

The process

From desktop game to browser

The original uses Rust and ggez for a desktop window. This browser prototype reimplements the game rules in Rust and compiles them to WebAssembly. JavaScript draws the board and handles browser input.

Matching and scoring follow the original game's rules, but this version uses a simplified interface. It does not save high scores or include all desktop animations and menus. The original creator and MIT license remain credited.

Reflection

Returning to the questions

Findings, lessons, and future improvements will be added after the hands-on work and testing.