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 clients, server and storage automatically.
- Cross-platform Multiplayer: All clients (Web / Android / iOS) connected to the game are synced in real time.
- AI Framework: Create bots that are highly customizable and debuggable.
- Game Phases: with different game rules (including custom turn orders) per phase.
- Secret State: Secret information (like the opponent's cards) can be hidden from the client.
- Prototyping: Debugging interface to simulate moves even before you render the game.
- Logs: Game logs with the ability to time travel (viewing the board at an earlier state).
- UI Agnostic: Client API for React, React Native or plain JS.
- Component Toolkit: Components for hex grids, cards, tokens.
$ npm install --save boardgame.io
$ npm install
$ npm run examples
See changelog.
See the contributing guidelines. Also take a look at the roadmap to find things that you could contribute to.
This is not an official Google product. It's a Googler's hobby project that's supported by contributions from the community.