Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mathieucaroff/cellex
Unidimensional Cellular Automata Explorer managing _arbitrary rules_
https://github.com/mathieucaroff/cellex
cellular-automaton chaos chaos-theory complexity education evolution fractal html5-canvas pattern pattern-detection put-image-data rule110 simulation simulator turing-completeness unidimensional universe
Last synced: about 1 month ago
JSON representation
Unidimensional Cellular Automata Explorer managing _arbitrary rules_
- Host: GitHub
- URL: https://github.com/mathieucaroff/cellex
- Owner: mathieucaroff
- License: other
- Created: 2022-02-10T15:07:19.000Z (almost 3 years ago)
- Default Branch: master
- Last Pushed: 2024-11-06T19:16:54.000Z (about 2 months ago)
- Last Synced: 2024-11-06T20:19:24.444Z (about 2 months ago)
- Topics: cellular-automaton, chaos, chaos-theory, complexity, education, evolution, fractal, html5-canvas, pattern, pattern-detection, put-image-data, rule110, simulation, simulator, turing-completeness, unidimensional, universe
- Language: TypeScript
- Homepage: https://cellex.ea9c.com/
- Size: 1.81 MB
- Stars: 5
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# [Cellex](https://mathieucaroff.com/cellex)
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](https://discord.gg/gF3C79GKPY) to talk about unidimensional cellular automata and cellex.
### Cellex main view
[![Cellex screencap](doc/img/cellex-screencap.png)](https://mathieucaroff.com/cellex)
### Cellex Gallery
[![Cellex gallery screencap](doc/img/cellex-gallery-screencap.png)](https://mathieucaroff.com/cellex)
## What are unidimensiontal cellular automata?
See the following ressources for introduction:
- [Introduction to the 1D Simulators](https://elife-asu.github.io/wss-modules/modules/1-1d-cellular-automata/)
- [Wikipedia's page on elementary automata](https://en.wikipedia.org/wiki/Elementary_cellular_automaton)## 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](https://www.wolframalpha.com/input/?i=rule+110) – Description (symmetries, properties, classes), and differential propagation examples
_All the below explorers are limited to elementary automata_
- [Cellexp](https://mathieucaroff.com/cellexp) – Autoscrolling, Speed, Impuse, Zoom, Size, Navigation, Border, Random, Properties, Symmetrics
- [Celldemo](http://devinacker.github.io/celldemo/) – Autoscrolling, Impuse, Random, Start patterns (three),
- [ECAX](https://www.xanxys.net/ecax/) – Zoom, Navigation, Compute-on-demand
- ~~[ECA Canvas](http://www.cs.swan.ac.uk/~csandy/research/play/ca/) – Size, Border, Random~~ csandy has been removed OnO
- ~~[ECA EmergentMind](http://www.emergentmind.com/elementary-cellular-automata) - Zoom, Board of 256 rules~~ has been removed as well## License
See [JAM license](https://opensource.org/license/jam/)
## Deploying the server
First, install node_modules: `yarn`. Then go to `src/server` and build the server:
```sh
cd src/server
yarn vite build
```Copy the generated server file up
```sh
cd ../..
cp src/server/dist/server.js .
```Compile the app
```sh
yarn build
```Start the server with the path of the `dist` folder as parameter
```
node server.js dist
```