A React implementation of the popular Conway's Game of Life, using React + Typescript + Vite + Redux + TailwindCSS.
Conway's Game of Life is a set of rules that create an algorithm that simulates simple life on a two-dimensional board. This board is made up of either dead or alive cells, and each generation produces new cells based on the following restrictions:
- Any live cell with two or three live neighbours survives.
- Any dead cell with three live neighbours becomes a live cell.
- All other live cells die in the next generation. Similarly, all other dead cells stay dead.
- NodeJS 14+
Clone the repository and navigate into it inside a terminal. Run npm i to install all necessary dependencies, and
afterwards simply run npm run dev to start a Vite dev server. By default, this will open a server listening
at http://localhost:3000/GameOfLife.
To run the automated tests (located in the tests directory), run npm run test, which will load vitest and
run through the various React Testing Library tests.
This project uses ESLint as an automated styling / linting tool. To ensure the project meets expected code guidelines
and quality, run npm run lint. If the program terminates and nothing is logged, no issues were found.
Contributions are welcome! If you spot a typo or a subtle bug, please open a pull request, ensure that all tests pass and the linter detects no issues, and we'll go from there.