_
___ _ __ __| | __ _ __ _ _ __ ___ ___
/ _ \ '_ \ / _` |/ _` |/ _` | '_ ` _ \ / _ \
| __/ | | | (_| | (_| | (_| | | | | | | __/
\___|_| |_|\__,_|\__, |\__,_|_| |_| |_|\___|
|___/
A WebRTC-enabled 3D chess game. endgame-chess.web.app
endgame is a simple online 3D chess game. Load the page, share the link, connect up and play chess!
endgame began as an entry for Static Showdown 2015, and has slowly crystallized into existence from that point on. The goal was to build an interesting way of playing chess with remote friends or family, while using it as an excuse to learn about WebRTC and WebGL.
Get the code and install the Node packages. See package.json for the version of node required.
git clone https://github.com/voithos/endgame.git
cd endgame
npm install
Then just run gulp
to build and serve the app locally!
For deployment, there are a set of dist
gulp tasks that can be used to
isolate, concatenate, and minify endgame's source.
gulp dist
will build and minify a distributable set of files for endgame, under thedist
directorygulp dist-serve
will launch a local web serve for the minified sourcegulp dist-clean
will clean and remove thedist
files
endgame was made to be hosted on Firebase. See their docs for directions on how
to set up Firebase hosting and DB. To use a custom Firebase DB, modify the
FIREBASE_CONFIG
constant in src/config.js
.
After configuring Firebase, simply run gulp dist
to generate the
distributable and then firebase deploy
to deploy to hosting.
This project wouldn't be possible without the generosity of open source
creators and contributors. See ATTRIBUTION.md
for a list of the libraries,
tools, and assets used.