Cero is a card game web application based on Crazy Eights. The UI and API for Cero is split between two code bases: cero-ui
and cero-api
.
This UI is built using React and Material UI, and communicates game actions to the cero-api backend.
Card assets were created by Cara Sheridan.
This project is still a work in progress, and as such there are milestones yet to hit before hitting the first major release.
- session controlled by api
- dockerize
- make available in the cloud
- unit tests (jest + @testing-library/react)
- mobile friendly
Most setups will require:
docker
docker-compose
A development setup will also require:
nodejs 14
npm 6
To run this app locally:
- Run
docker-compose up
- Access the application from
http://localhost
.
For development, the UI is run with webpack-dev-server, which will also handle proxying to the API in place of nginx.
To set up an environment for development:
- First, start up the API and redis store with
docker-compose -f docker-compose.dev.yaml up
- Install the application with
npm install
- Start the application with
npm run start:dev
- Access the application from
http://localhost:3000
.
On your host server:
- Copy over the
docker-compose.yaml
file from the project root onto your host server. - Run
docker-compose up
- Access the application from
http://<your ip or host>
.