Skip to content

koldoon/codenames-game

Repository files navigation

CODENAMES Board Game Server and Frontend

This is a simple implementation of the famous board game - Codenames (by Vlaada Chvátil) - using Node.js, Angular and Google Material UI. No any database is used, all the games are kept in runtime memory and removed in one hour of inactivity.

The Game is implemented with Russian interface and includes Russian words dictionary (so far). You can create your own dictionary by implementing DictionaryModel interface (see GamesService for usage) or simply put extra yaml files in dist/data directory respecting the same structure as in others.

Steps to run

  • Install Node.js
  • $ git clone https://github.com/koldoon/codenames-game.git - clone this repo
  • $ cd codenames-game
  • $ npm i - install dependencies
  • $ npm run build - build sources into ./dist
  • $ npm run start - start game server serving API and frontend
  • Open http://localhost:8095/ and have a fun

Build Docker image from local sources build

  • Install Node.js
  • Install Docker
  • $ git clone https://github.com/koldoon/codenames-game.git - clone this repo
  • $ cd codenames-game
  • $ npm i - install dependencies
  • $ npm run build-docker

Result image will be tagged as codenames-game:latest.

Build Docker image only (using staged build)

  • Install Docker
  • $ git clone https://github.com/koldoon/codenames-game.git - clone this repo
  • $ cd codenames-game
  • $ docker build . -f dockerfile.staged -t codenames-game

ENV Options

  • Default http port (8095) can be changed via CODENAMES_HTTP_PORT
  • NO_CONSOLE_COLORS=1 to disable colorful console output

How to play

See Wikipedia for the rules and details.

Play now

Currently deployed and available to play at https://codenames.koldoon.ru

About

Codenames Board Game online implementation

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published