Docs ▸ Start
Getting started
Turn any web game folder (three.js, Phaser, PixiJS, Babylon.js, plain canvas) into Windows, Mac and Linux desktop builds you can upload to Steam, plus Xcode and Android Studio projects for the App Store and Google Play. Free and open source (MIT). Built so an AI agent can run it end to end.
npx gameshipper init # detects your game, writes gameshipper.json
npx gameshipper play # plays it in the desktop shell (F12 saves a store screenshot)
npx gameshipper play --smoke # runs it for 5 s and reports problems
npx gameshipper build # out/windows, out/mac, out/linux and the store images in out/store
npx gameshipper check # launches the build and checks it's ready for Steam and Steam Deck
npx gameshipper publish # uploads the builds to Steam, itch.io and GitHub Releases
npx gameshipper status # what's configured, built, and what happened last
npx gameshipper ci init # a GitHub Actions workflow that builds and runs it on each OS
npx gameshipper mcp # every command as an MCP tool, for AI agentsYour game doesn't need a build step or npm. A folder with an index.html is enough. Files your game loads from CDNs (three.js from unpkg through an import map, a <script> or <link> tag, a CSS @import) are downloaded into the build, so it works offline. They're pinned in gameshipper.lock, so builds are reproducible from it; use --frozen-lock in CI to enforce that.
Needs Node.js 22.12 or newer. The first build for each OS downloads Electron (120 to 160 MB, cached after that).
Where next
- Commands: every command and flag.
- For AI agents: the JSON contract and the loop an agent runs.
- Steam: achievements, stats, leaderboards and the overlay.
- Publishing: uploading to Steam, itch.io and GitHub Releases.