Click a plant to see its genome.


What's this?

Bonsai is primarily a plant evolution simulator, and partly a tech demo of HTML5.

For now, you can just watch plants reproduce (and die). You can also click plant to inspect its genome, signals, stats etc. Simulated factors are energy, mutation, and in-cell signaling based growth.

Plant Model

A plant consists of organ-scale cells, each of them contains set of signals. A plant also has a single scalar energy, which is shared among the all cells in the plant.

Energy Model

In bonsai, each plant has stored energy which changes over time from several factors. Only way to produce energy is via photosynthesis, and it's simulated by number of rays hitting cells that contains chloroplast. (it also affects shadow)

Everything else (including mere existence) costs energy and plants with low energy turns blue and eventually dies.

Cell Model

A cell contains signals, which is a string of alphabets. Signals are generated by expression of a gene.

Genome consists of gene, and each gene looks like (condition, production). Condition determines a probability of generating the signals in production term, by multiplying concentration of each signal.

Some signals have special builtin meanings:


You need a browser with WebGL & Web Worker support. Also bonsai is only tested on Chrome/Linux.

If something seems wrong, your options are:

  1. Try using Chrome
  2. Raise an Issue (or send a pull request fixing it)
  3. Just give up