Universal Game Engine

Any game.
Any topology.
Zero game-specific code.

One micro-kernel engine playing chess, go, draughts, hex, shogi, xiangqi, mancala, morris, reversi, and the Landlord's Game across 230 variants. 229 carry zero JavaScript, expressed in declarative frontmatter alone. Games are configuration files. The engine does the rest.

6,881 Tests passing
10 Playable families
230 Variants
99% Frontmatter-only
6 Topologies

The Platform

Open Source

Pure ESM, zero dependencies, no build step. 14 packages composing into a universal game runtime. MIT licensed.

10 Playable Families

Each family has a full play surface: variant registry, embed protocol, interaction model, headless SDK.

46 Games in the Rules Catalogue

The rules library documents the full system: 296 variants across classic board games, card systems, RPGs, and more.

19 Classic Board Games
6 Component Systems
10 Tabletop RPGs
11 Mods & Standalone

6 Topology Types

The universal adapter layer. Every package above topologies defines a contract. Topologies implement it. Higher packages never know which topology they consume.

For Developers

<iframe src="engine.moddable.games/play/?game=chess/standard&embed=1"></iframe>

Bidirectional postMessage bridge for state sync, move submission, and event handling. Embed any game in any page with a single line.

import { createGame } from '@moddable/engine'

const game = createGame('reversi/standard')
const moves = game.getLegalMoves()
game.execute(moves[0])

ES module. Zero dependencies. Mount into any DOM container or run headless. Full game lifecycle from one import.

play_move | get_legal_moves
suggest_move | render_board
create_game | list_variants
evaluate_position | validate_game_def

AI assistant integration. Let Claude or any MCP client play, analyse, and generate games via tool protocol.

Architecture

Five resource types compose independently. No game names in core. No topology-specific logic in schema. Every new topology auto-works with all existing packages.

Layer 4
AI Game Factory
Layer 3
Render Schema Themes
Layer 2
Piece Behaviour Rules Components
Layer 1
Grid Hex Track Pit Graph
Layer 0
Core