Interactive web version of John Conway's classic "Game of Life" with multiple visual themes and modern UI/UX design.
- Classic Game Rules: Implementation of original Conway's Game of Life rules
- Interactive Controls: Click to create/delete cells, drag to draw patterns
- Adjustable Speed: Simulation speed control from 1 to 20
- Various Grid Sizes: 30ร30, 50ร50, 75ร75, 100ร100
- Keyboard Shortcuts: Space (start/pause), Ctrl+R (reset), Ctrl+C (clear), Ctrl+T (theme switch)
- Classic - Minimalist design in the style of early games
- Cyber - Cyberpunk style with neon colors and glitch effects
- Bioluminescent - Deep sea theme with bioluminescent effects
- Retro - Retro-futuristic monitor with CRT effects
- Architectural - Technical blueprint with architectural elements
- Laboratory - Laboratory under microscope with microbial colonies
- Watercolor - Artistic watercolor painting simulation
- HTML5 Canvas: High-performance rendering
- CSS3 Animations: Smooth transitions and effects
- JavaScript ES6+: Modern code with classes
- Responsive Design: Adaptation to various screens
- LocalStorage: Theme selection persistence
- Clone the repository:
git clone https://github.com/terekhindc/life.git
cd life- Open
index.htmlin a browser or run a local server:
python3 -m http.server 8000- Open http://localhost:8000 in your browser
- Simple black and white design
- Courier New font
- Minimalist interface elements
- Neon colors (#ff006e, #00d4ff, #ffd700)
- Glitch effects and RGB shifts
- Orbitron font
- Animated particles
- Deep sea colors (#00ffff, #00ff88)
- Pulsing effects
- Organic animations
- Gradient transitions
- CRT monitor style
- Green/amber colors
- Scanning line effects
- Phosphor animations
- Technical blueprint
- White lines on blue background
- Millimeter grid
- Drawing animations
- Petri dish style
- Microbial colonies
- Agar nutrient medium
- Organic cell shapes
- Artistic brush strokes
- Color blending effects
- Paper texture background
- Age-based color changes
- Click: Create/delete cell
- Drag: Draw patterns
- Click buttons: Game control
- Space: Start/pause
- Ctrl+R: Reset game
- Ctrl+C: Clear field
- Ctrl+T: Next theme
- START: Launch simulation
- PAUSE: Pause
- RESET: Reset to initial state
- CLEAR: Clear field
- SPEED: Speed adjustment (1-20)
- GRID SIZE: Grid size
- GENERATION: Current generation
- LIVE CELLS: Number of live cells
- HTML5: Structure and Canvas API
- CSS3: Styles, animations, variables
- JavaScript ES6+: Game logic and interactivity
- Web APIs: LocalStorage, Canvas, Events
life/
โโโ index.html # Main HTML page
โโโ styles.css # All styles and themes
โโโ script.js # Game logic
โโโ README.md # Documentation
- Add CSS variables to
:root - Create
body.theme-[name]class - Add styles for interface elements
- Update JavaScript for switching
- Add preview icon
Modify the updateGrid() method in the GameOfLife class
- Fork the repository
- Create a branch for your feature
- Make your changes
- Create a Pull Request
MIT License - see LICENSE file for details
Andrei Terekhin
- GitHub: @terekhindc
- Project: Conway's Game of Life
- John Conway for creating the original game
- Developer community for inspiration
- Everyone who tested and provided feedback
Enjoy exploring cellular automata! ๐งฌโจ