Skip to content

Unidimensional Cellular Automata Explorer managing _arbitrary rules_

License

Notifications You must be signed in to change notification settings

mathieucaroff/cellex

Repository files navigation

A unidimensional cellular automata explorer. It supports up to 16 colors, and a neigborhood range of up to 11 cells.

Discord community

Join the Cellex Discord community to talk about unidimensional cellular automata and cellex.

Cellex main view

Cellex screencap

Cellex Gallery

Cellex gallery screencap

What are unidimensiontal cellular automata?

See the following ressources for introduction:

Features

Cellex supports panning, moving around with the mouse or the keyboard as well as autoscroll down and varying the autoscroll speed. It also features an adjustable zoomed up view. It also supports user-based differential propagation view.

The engine supports up to 16 states and a transition function of size 4096 at most. Thus, neighborhood size can go up to 11 when the number of state is 2.

Limits

The current UI limits the number of states to seven because for now the palette is composed of seven colors.

Other cellular automata explorers

  • WolframAlpha – Description (symmetries, properties, classes), and differential propagation examples

All the below explorers are limited to elementary automata

  • Cellexp – Autoscrolling, Speed, Impuse, Zoom, Size, Navigation, Border, Random, Properties, Symmetrics
  • Celldemo – Autoscrolling, Impuse, Random, Start patterns (three),
  • ECAX – Zoom, Navigation, Compute-on-demand
  • ECA Canvas – Size, Border, Random csandy has been removed OnO
  • ECA EmergentMind - Zoom, Board of 256 rules has been removed as well

License

See JAM license

Deploying the server

First, install node_modules: yarn. Then go to src/server and build the server:

cd src/server
yarn vite build

Copy the generated server file up

cd ../..
cp src/server/dist/server.js .

Compile the app

yarn build

Start the server with the path of the dist folder as parameter

node server.js dist