Full Documentation: link
The goal of this framework is to allow a game author to essentially translate the rules of a game into a series of simple functions that describe how the game state changes when a particular move is made, and the framework takes care of the rest. You will not need to write any networking or backend code.
- State Management: Game state is managed seamlessly across browser, server and storage automatically.
- Prototyping: Debugging interface to simulate moves even before you render the game.
- Multiplayer: All browsers connected to the same game are synced in real time with no refreshes required.
- Game Phases: with different game rules (including custom turn orders) per phase.
- Board Actions: Automatic game moves not associated with any player.
- Secret State: Secret information (like the opponent's cards) can be hidden from the client.
- Logs: Game logs with the ability to time travel (viewing the board at an earlier state).
- UI toolkit: React components for common game elements (cards etc.).
$ npm install --save boardgame.io
$ npm install
$ npm run examples
Breaking Changes
boardgame.io/game
is nowboardgame.io/core
, and does not have a default export.
// v0.16
import { Game } from 'boardgame.io/core'
// v0.15
import Game from 'boardgame.io/game'
victory
is nowendGameIf
, and goes inside aflow
section.ctx.winner
is nowctx.gameover
, and contains the return value ofendGameIf
.props.endTurn
is nowprops.game.endTurn
.
See the contributing guidelines.
This is not an official Google product.