{"doc":"introduction","title":"Introduction","markdown":"# Introduction\n\nGamestage, made by Monterosa, takes a game you have vibe coded in a browser and\nputs it into production. The answers, the scoring, the play limits and the\nsettlement move to a server. The interface stays as you built it.\n\nA prototype keeps its answers in the page, where anyone who opens the developer\ntools can read them. That is fine for a demo and stops being fine the moment\nstrangers play for something. Moving the answers off the page also brings the\nthings a live game needs and a prototype has none of: logs, monitoring, and\nlimits on how often one person can play.\n\n## How does Gamestage change your game?\n\nYour web app keeps its interface and sends each play to Gamestage. The Engine\nholds the material a player must not see, works out the result and sends back\nwhat it decided.\n\n```\nBROWSER BEFORE                        BROWSER AFTER\n──────────────────────────────        ──────────────────────────────\ninterface and input                   interface and input\nanswers and values                       ↓  intent\nscoring and limits                    ┌────────────────────────────┐\n                                      │ ENGINE                     │\n                                      │ answers, scoring, locks,   │\n                                      │ attempts, settlement       │\n                                      └────────────────────────────┘\n                                         ↓  committed outcome\n                                      the page renders what it is told\n```\n\nThe decisions move to the server and you keep the interface.\n\n## Who Gamestage is for\n\nGamestage is made for creators or developers with a game prototype that runs in\na browser and a coding agent like Claude Code or Codex doing the work. You\ninstall our CLI tool, then the agent reads its existing source, moves private\nmaterial into the App Manifest, wires a newly generated client and runs a\nseries of checks.\n\nYou make the decisions an agent should not: rights, audience, identity, and\nanything that changes what a live audience can touch.\n\nYou do not need to have used Monterosa before. Inspecting your game and\nscaffolding its manifest need no account; running it against the Engine does,\nonce you reach that step.\n\n## What Gamestage is not\n\n**It is not a front-end game engine.** Gamestage does not draw anything, own a\nscene graph or ask you to adopt a framework. The Engine holds one game format's\nrules and answers questions about a play. Your app is still your app.\n\n**It is not a cloud hosting company.** Every deployed game, on Starter and\nabove, is a project on [Monterosa](https://www.monterosa.co/)\n[Interaction Cloud](https://products.monterosa.co/mic/core-concepts) with real\neditions, and Starter games are served from a Playground environment so a game\nhas somewhere to live. A paid plan changes which Space your projects sit in\nand adds Studio's content management and live-operations tooling; it does not\nchange whether the platform is involved at all. Hosting comes with the\nMonterosa platform.\n\n**It does not log players in.** Gamestage ships no identity provider and expects\nyou to bring one. It accepts OIDC through JWT tokens: a game that wants named\nplayers points at its own issuer and keys, and Gamestage checks the tokens your\nexisting login already hands out.\n\n## Where the product is today\n\nGamestage is in Preview and being tested with Monterosa customers. The two\nhalves of the product are at different stages.\n\nThe local route is active: inspecting a game, choosing its format and\nscaffolding the manifest need no account. Running the real Engine rules on\nyour machine and proving the result in a browser do, once you get that far,\nbecause from there you are running against your account rather than reading\nyour own files.\n\nThe hosted route is in Preview. The CLI points at `https://api.gamestage.ai`,\nand Backstage needs an approved account rather than open signup.\n\nWhere this documentation is unsure, it says so rather than rounding up.\n"}