Fork me on GitHub

Jolly

The Game of Life implemented with HMTL5 and JS

Jolly (inspired by Golly) is an online "Game of Life" simulator. Try it now below!

Load Pattern File

Jolly (inspired by Golly) is an implementation of Conway's Game of Life created using HTML5 and JavaScript.

Jolly differs from other online implementations in that it has a number of advanced features. The following is a brief overview of why we think Jolly deserves your attention.

1. No dependencies. Jolly is implemented in pure JavaScript without any external dependencies (lightweight and portable!). Our philosophy is to avoid using frameworks unless absolutely necessary.

2. No backend. As long as you have a relatively new-ish browser (e.g. Firefox 3) you can use all of Jolly's features (e.g. file loading) without a backend component. You can host and run it anywhere. Our philosophy is to avoid using a backend server and do everything in JavaScript.

3. Hashlife! This is arguably our main contribution to date. Jolly uses the hashlife algorithm (http://en.wikipedia.org/wiki/Hashlife) which has been implemented entirely in JavaScript. If you don't know what hashlife is and why it is a big deal - take a look at the Wikipedia link above.

4. Load pattern files. If you jump to http://www.conwaylife.com/wiki/ you will find hundreds of various pattern files. Jolly can load RLE and Plaintext file so that you don't have to implement patterns by hand.

5. UI goodness. Jolly implements the standard UI features you would expect. You can zoom in and out, run, step, stop and clear the canvas.

Authors

Peter Sbarski

License

Copyright (c) 2010 Peter Sbarski

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

http://creativecommons.org/licenses/MIT/

Download

You can download this project in either zip or tar formats.

You can also clone the project with Git by running:

$ git clone git://github.com/sbarski/jolly