Eine wunderschöne, interaktive und moderne Implementierung von John Horton Conways klassischem zellulären Automaten, entwickelt mit Vanilla JS, HTML5 Canvas und modernem CSS.
- Interaktives Spielfeld: Klicke oder ziehe mit der Maus über das Raster, um Zellen manuell zu zeichnen oder zu entfernen.
- Wiedergabesteuerung: Starte, pausiere oder gehe das Spiel in Einzelschritten durch.
- Geschwindigkeitsregler: Passe die Simulationsgeschwindigkeit (FPS) dynamisch mit dem Schieberegler an.
- Zufall & Leeren: Fülle das Raster mit einer zufälligen Konfiguration oder lösche das Spielfeld komplett.
- Statistiken: Zählt die aktuelle Generation und die lebende Population in Echtzeit.
- Modernes UI: Ein schickes Dark-Theme-Design mit Glassmorphismus-Panels, leuchtenden Neonzellen und geschmeidigen Hover-Effekten.
Die Anwendung wird als Electron-Desktop-App gestartet.
- Installiere die Abhängigkeiten:
npm install- Starte die App im Entwicklungsmodus:
npm startFür distributierbare Builds stehen folgende Skripte zur Verfügung:
npm run pack
npm run dist
npm run dist:mac
npm run dist:winDas Universum des Game of Life ist ein zweidimensionales Raster aus quadratischen Zellen. Jede Zelle hat zwei mögliche Zustände: lebendig oder tot. Jede Zelle interagiert mit ihren acht Nachbarn (horizontal, vertikal und diagonal).
Bei jedem Zeitschritt passieren folgende Übergänge:
- Unterpopulation: Eine lebendige Zelle mit weniger als zwei lebendigen Nachbarn stirbt.
- Überleben: Eine lebendige Zelle mit zwei oder drei lebendigen Nachbarn lebt in der nächsten Generation weiter.
- Überpopulation: Eine lebendige Zelle mit mehr als drei lebendigen Nachbarn stirbt.
- Reproduktion: Eine tote Zelle mit genau drei lebendigen Nachbarn wird zu einer lebendigen Zelle.
- HTML5
- CSS3 (Custom Properties, Flexbox)
- Vanilla JavaScript (ES6+, Canvas API, requestAnimationFrame)