For the London Computation Club's 2017 Festive Show and Tell I implemented the celullar automata snowflake simulation presented in:
Modeling Snow Crystal Growth II: A mesoscopic lattice map with plausible dynamics.
Janko Gravner & David Griffeath (2007) - doi:10.1016/j.physd.2007.09.008.
My first implemention was a proof of concept using Python + Jupyter + numpy.
Once I was confident that I understood the algorithm I reimplemented it using Javascript + webGL both as an excuse to learn webGL and a way of improving performance by doing as much of the simulation as possible on the GPU.