Simulation · Rust + WebAssembly · Flutter Web
Cellular Automaton
Alleinentwicklung · Rust (wasm-bindgen, wasm-pack), Flutter Web, Riverpod, serde
Problem & Ziel
Ein robuster Proof of Concept nach professionellen Standards (2000+ Zeilen Code): eine interaktive Browser-Simulation zellularer Automaten – als langlebige, modulare Software-Basis statt einfacher Bastelarbeit.
Herausforderung
Zwei Welten verbinden: ein performanter Simulationskern in Rust, der als WebAssembly-Modul im Browser läuft, angebunden an eine Flutter-Web-Oberfläche – inklusive Performance-Überlegungen bei der Übergabe größerer Datenmengen zwischen Rust und Dart/JavaScript.
Lösung
Simulationskern „ca_core“ in Rust mit Strategy-Pattern für vier zur Laufzeit umschaltbare Regelwerke (Game of Life, High Life, Maze, Seeds), via wasm-pack zu WebAssembly kompiliert. Flutter-UI mit Riverpod-State-Management: Play/Step/Reset, einstellbare Geschwindigkeit, Live-Anzeige von Generation und lebenden Zellen, Export als CSV, JSON und PNG.
Ergebnis
Alle vier Regelwerke getestet und stabil im Browser lauffähig – modular erweiterbar um weitere Regelwerke und Exportformate.
Learnings
Integration von Rust und Flutter über WebAssembly, Architektur mit austauschbaren Regelwerken (Strategy-Pattern) und der Umgang mit Performance an der Sprachgrenze zwischen Rust und Dart/JavaScript.
Einblicke in das Projekt
Dekorative Simulation des Spiels des Lebens. Zellen entstehen und sterben nach festen Regeln. Die Darstellung ist rein visuell; alle Informationen dazu stehen im Text der Case Study.
Live-Demo: Game of Life im Browser – klicken Sie ins Raster, um eigene Zellen zu setzen.


