# From repository to playable game

Create a standalone game, inspect its actions, and play it locally.

Use Node.js 22.14 or later. A project-local CLI makes each repository reproducible.

```sh
npx @tabletopwithfriends/cli@0.1.0 create my-game
cd my-game
npm install
npx twf inspect src/game.ts
npx twf simulate src/game.ts --seed first-game
npx twf dev
```

`twf create` writes a game, tests, package.json, and a TypeScript configuration. Both public package dependencies use exact versions. Commit your package lockfile.

## Give the game a table

Components describe physical pieces, cards, boards, and tokens. A scene places instances on the table and attaches validated actions. Rules still belong in the game definition, so headless play and browser play follow the same rules.

## Keep iteration quick

`twf dev` reloads the local table as you edit. `twf inspect` prints actions and projections as JSON. `twf simulate` plays legal actions under a seeded policy. `twf explore` searches a small game's reachable states.

## Before deployment

Run the generated tests and TypeScript check. Initialize Git and commit the repository. You can play locally without platform authentication.