Conway's Game of Life is a cellular automaton devised by the mathematician John Conway. It is a zero-player game that follows simple rules to simulate the behavior of cells on a grid.
This repository implents a web-based version of the game. You can play it by visiting:
https://dada-public.github.io/conway/
To run the demo locally, follow these steps:
- Clone this repository
- Configure the repository by running:
npm install - Start the development server:
npm run start - Open your browser and visit:
http://localhost:1234 - In case you want to add or modify the code: open a feature branch (feat/xxx). When ready, the changes will be merged through a pull request.
This repository also includes CLI commands to help adding new features or fixing bugs:
npm install: configures the repository for local developmentnpm start: runs a local servernpm build: builds a production ready distributionnpm test: runs testsnpm test:watch: runs test in watch modenpm lint: provides format, style and security tips
This repository implements several workflows to enforce good practices, and deploy new versions.
- Pre-push hook (QA): prevents test failing commits to be pushed.
- Pre-push hook (SEMVER): enforces conventional commits.
This two hooks will be installed as part of this repository configuration step.
- Validate workflow: runs test to ensure all incoming code in a Pull request is valid.
- Release workflow: based in conventional-commits this workflow publishes a new Github release on each push at main.
- Deployment workflow: updates this repository Pages on each push at main that contains relevant changes.