/effective-barnacle

A super scalable multiplayer game made with a ton of awesome technologies

Primary LanguageJavaScript

Effective Barnacle

A super scalable multiplayer game made with a ton of awesome technologies.

Curious about how we built it and how does it work? Read our blog post!

Client:

  • React, Redux, Sagas
  • HTML5 Canvas
  • WebSocket

Server:

Preview

Screenshot Screenshot
Home page The game

Run it

You just need to run:

./scripts/deploy.sh

This script will:

  • Create a traefik_default docker network if it doesn't exist yet
  • Run docker-compose build to build docker images
  • Run docker-compose up -d to start services

Services are listed below:

You can also customize ports and other variables with the following environment variables:

  • EB_TRAEFIK_PORT (80)
  • EB_DOMAIN_NAME (localhost)
  • EB_ORCHESTRATOR_PORT (9000)
  • EB_ORCHESTRATOR_SECRET (supersecret)
  • EB_SERVER_DOCKER_IMAGE (effective-barnacle_backend)
  • EB_MAX_CLIENTS_PER_SERVER (5)
  • EB_DEFAULT_SERVERS_NB (5)
  • EB_MONGO_HOST (mongodb)

Shut it down

Just run:

./scripts/stop.sh

To make sure that Effective Barnacle is shutting down with this command, your server Docker image should be named effective-barnacle_backend.

Contributing

Pull requests are very welcomed!

To get started in your contribution, you just need to either use the ./scripts/deploy.sh script or install/run services in dev:

$ yarn install
$ yarn dev

Authors