boardgameio/boardgame.io

State Management and Multiplayer Networking for Turn-Based Games

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 14 minutes ago
Added to GitGenius on September 4th, 2026
Created on November 21st, 2017
Open Issues & Pull Requests: 66 (+0)
GitHub issues: Enabled
Number of forks: 832
Total Stargazers: 12,428 (+0)
Total Subscribers: 150 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 43.5 hours
Mean response time: 250.3 days
90th percentile: 1170.4 days
Tracked items: 76

How this project is maintained

Around half of the issues opened in the past year never receive a reply. Only 1% of issues opened in the past year have been closed. Three people close 90% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 17
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 771 days
Stale 30+ days: 11
Stale 90+ days: 5

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • feature (10)
  • bug (4)
  • question (4)
  • Lobby (2)
  • documentation (2)
  • good first issue (2)
  • AI (1)
  • dependencies (1)

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

boardgame.io is an engine for creating turn-based games using JavaScript that handles state management and multiplayer networking automatically.

The tool solves the problem of building networked turn-based games by letting developers write simple functions describing how game state changes when moves are made. These functions are automatically converted into a complete playable game with online multiplayer capabilities, eliminating the need to write networking or storage code manually. The engine manages game state seamlessly across clients and servers, keeps state synchronized in realtime across platforms, and provides features like game phases with different rules per phase, player matchmaking through a lobby system, time-travel game logs, and automatically generated AI bots.

Developers building turn-based games should choose this tool if they want to focus on game logic rather than infrastructure. It suits projects ranging from prototypes to production games and works with vanilla JavaScript or through bindings for React and React Native. The view-layer agnostic design means you can use whatever frontend framework fits your needs. The tool includes a prototyping interface to simulate moves before rendering, and a plugin system for creating custom abstractions.

The project maintains active community engagement through Gitter and GitHub Discussions channels. Documentation is comprehensive with an edit-on-GitHub workflow encouraging contributions. The repository includes a roadmap and contributing guidelines, and maintains a dev container setup for VS Code development. The codebase has automated test coverage tracking and a changelog documenting updates.