Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ChaotiColor — Generative Art

Live Demo License: MIT

Generative cellular automata art. Each refresh creates a unique chaotic pattern using elementary cellular automata rules with vibrant color palettes and three distinct modes.

🎨 Live Demo

ChaotiColor Website Demo

View Live Demo
Click the image or button to experience the generative art

👕 Apparel Preview

ChaotiColor on T-Shirt
ChaotiColor artwork printed on a T-shirt

✨ Features

  • Cellular Automata — Rule-based pattern generation using elementary cellular automata
  • 3 Unique Modes — Different visual styles for endless variety
  • 43 Color Palettes — Rich, vibrant color combinations
  • Chaotic Patterns — Complex emergent patterns from simple rules
  • Seed-Based — Every composition is unique and reproducible via its seed
  • Save & Share — Download as PNG with seed in filename
  • Apparel Mode — Preview artwork on a T-shirt mockup
  • Responsive — Works on desktop, tablet, and mobile
  • Pure JavaScript — No external dependencies
  • Keyboard Shortcuts:
    • R — Regenerate
    • S — Save image
    • T — Toggle apparel view

🎨 Artwork Details

Parameter Range Description
Color Palettes 43 options Predefined vibrant color combinations
Grid Size 4×4 to 300×300 Random grid dimensions
Modes 3 options Different color application styles
Ruleset 8-bit Elementary cellular automata rules
Pattern Chaotic Emergent from simple rules

🎯 Three Modes

Mode Description
Mode 0 Black rectangles on vibrant colored background
Mode 1 Vibrant colored rectangles on black background
Mode 2 Random RGB colors on black background

🚀 Quick Start

Local Development

# Clone the repository
git clone https://github.com/reyrove/ChaotiColor-Generative-Art.git

# Navigate to the directory
cd ChaotiColor-Generative-Art

# Open in browser
open index.html
# or use a live server

Deploy to GitHub Pages

  1. Push to GitHub
  2. Go to Settings → Pages
  3. Select branch main and root folder
  4. Your site will be live at https://reyrove.github.io/ChaotiColor-Generative-Art

🧠 How It Works

The artwork is generated using elementary cellular automata with deterministic random number generation:

  1. Setup:

    • Chooses a random color palette from 43 options
    • Determines grid dimensions (4-300 cells)
    • Selects one of 3 modes
    • Generates a random 8-bit ruleset
  2. Cellular Automata:

    • Each cell follows rules based on its neighbors
    • Ruleset determines pattern evolution
    • Creates complex, chaotic patterns from simple rules
  3. Rendering:

    • Each cell is drawn as a rectangle
    • Colors vary based on mode and palette
    • Patterns emerge row by row
  4. Modes:

    • Mode 0: Color on black background
    • Mode 1: Black on color background
    • Mode 2: Random RGB colors

📁 File Structure

ChaotiColor-Generative-Art/
├── index.html          # Main application (all-in-one)
├── ChaotiColor.jpg     # T-shirt mockup image
├── fav.svg             # Favicon
├── demo-screenshot.jpg # Website demo screenshot
├── README.md           # This file
└── LICENSE             # MIT License

🛠️ Tech Stack

  • Pure Vanilla HTML/CSS/JS — No dependencies
  • Canvas API — 2D rendering
  • CSS Flexbox/Grid — Responsive layout
  • GitHub Pages — Hosting

🎯 Interactive Controls

Action Keyboard Button
Regenerate R Click "regenerate"
Save Image S Click "regenerate"
Toggle Apparel T Click "apparel"

🎨 The Creative Process

Cellular Automata

Each cell's state is determined by its left and right neighbors using an 8-bit ruleset. This creates complex, emergent patterns that are both chaotic and structured.

Color Palettes

43 carefully curated color palettes provide vibrant, harmonious color combinations that bring the patterns to life.

Three Modes

  • Mode 0: Colorful rectangles on black background
  • Mode 1: Black rectangles on colorful background
  • Mode 2: Random RGB colors on black background

📱 Responsive Design

The application automatically adapts to:

  • Desktop screens
  • Tablets
  • Mobile phones
  • Landscape orientation
  • Various aspect ratios

🤝 Contributing

Contributions are welcome! Feel free to:

  • Fork the repository
  • Create a feature branch
  • Submit a pull request

Ideas for Contributions:

  • New color palettes
  • Additional automata rules
  • Different rendering styles
  • Animation features
  • Performance optimizations

📄 License

MIT License — see LICENSE file for details.

🙏 Acknowledgments

  • Inspired by cellular automata and generative art
  • Pure JavaScript implementation
  • Special thanks to the creative coding community

Built with ❤️ and chaotic beauty