# Gunjin 軍人 — Hidden-rank strategy games > Gunjin 軍人 — Hidden-rank strategy games: five immutable engines, private setups, player/observer views, redacted replay and accessible English/Japanese pass-the-device play. Zero runtime dependencies. Install with `npm install @johnmorrisdotca/gunjin`. Every page below is also an HTML page at the same address ending in .html; the documentation's home is https://johnmorrisdotca.github.io/gunjin/docs/. The examples on the reference pages are run when the site is built, and what they print is shown under them. ## Guides - [Getting started](https://johnmorrisdotca.github.io/gunjin/docs/guides/getting-started.md): Arrange a native Hasami match and inspect the legal first move. - [Select one of the five rule modes](https://johnmorrisdotca.github.io/gunjin/docs/guides/five-rule-modes.md): Keep each mode’s roster, terrain, movement and battle rules together. - [Pass the device and reject stale actions](https://johnmorrisdotca.github.io/gunjin/docs/guides/handoff-and-turns.md): Use setupStep and turn with the native lifecycle. - [Show only the viewer’s information](https://johnmorrisdotca.github.io/gunjin/docs/guides/redacted-views.md): Separate authoritative state, player views and observer positions. - [Choose public replay or trusted storage](https://johnmorrisdotca.github.io/gunjin/docs/guides/public-and-trusted-replay.md): Share redacted records while keeping role-bearing storage private. - [Resign or agree a draw](https://johnmorrisdotca.github.io/gunjin/docs/guides/ending-a-match.md): Keep ending requests on the native player/turn boundary. - [Draw redacted boards and terrain](https://johnmorrisdotca.github.io/gunjin/docs/guides/drawing-and-terrain.md): Use native views, board features and presentation-only choices. - [Mount the native shared-device player](https://johnmorrisdotca.github.io/gunjin/docs/guides/native-player.md): Keep independent instances and expose only redacted handles/callbacks. - [How rules, views and the player fit together](https://johnmorrisdotca.github.io/gunjin/docs/guides/architecture.md): Preserved architecture and the authoritative/redacted boundaries. - [Troubleshooting and FAQ](https://johnmorrisdotca.github.io/gunjin/docs/guides/troubleshooting.md): Interpret hidden nulls, refused setups, stale turns and decoder scope. - [Upgrading within 0.x](https://johnmorrisdotca.github.io/gunjin/docs/guides/upgrading.md): Preserve rule mode, private host state and public protocol boundaries. ## Reference - [@johnmorrisdotca/gunjin/hasami](https://johnmorrisdotca.github.io/gunjin/docs/api/hasami/index.md): Hidden Hasami rules - [@johnmorrisdotca/gunjin/luzhanqi-mini](https://johnmorrisdotca.github.io/gunjin/docs/api/luzhanqi-mini/index.md): Luzhanqi Mini rules - [@johnmorrisdotca/gunjin/salpakan](https://johnmorrisdotca.github.io/gunjin/docs/api/salpakan/index.md): Salpakan rules - [@johnmorrisdotca/gunjin/stratego-lite](https://johnmorrisdotca.github.io/gunjin/docs/api/stratego-lite/index.md): Shared immutable match lifecycle for the Capture Flag ruleset. - [@johnmorrisdotca/gunjin/gunjin-shogi](https://johnmorrisdotca.github.io/gunjin/docs/api/gunjin-shogi/index.md): Shared immutable match lifecycle for the club ruleset. - [@johnmorrisdotca/gunjin/trusted](https://johnmorrisdotca.github.io/gunjin/docs/api/trusted/index.md): Trusted host storage - [@johnmorrisdotca/gunjin/views](https://johnmorrisdotca.github.io/gunjin/docs/api/views/index.md): Redacted player and observer views - [@johnmorrisdotca/gunjin/draw](https://johnmorrisdotca.github.io/gunjin/docs/api/draw/index.md): SVG boards - [@johnmorrisdotca/gunjin/play](https://johnmorrisdotca.github.io/gunjin/docs/api/play/index.md): Native shared-device player - [@johnmorrisdotca/gunjin](https://johnmorrisdotca.github.io/gunjin/docs/api/main/index.md): SVG board rendering and its optional visual settings. ## Optional - [Changelog](https://johnmorrisdotca.github.io/gunjin/docs/changelog.md): every release - [Every export, in full](https://johnmorrisdotca.github.io/gunjin/llms-full.txt) - [Source](https://github.com/johnmorrisdotca/gunjin)