How to publish a web game
The simplest way to publish a web game on Playfrog is to let the coding agent that built it handle the upload. Playfrog accepts static HTML5 games and returns a public page that people can open and play in their browser.
1. Check the game folder
The folder you publish must contain index.html at its top level. If your project builds into dist, build, or another output folder, publish that folder.
Ask your agent:
> Publish this game to Playfrog.
2. Check that the game fits the player
Playfrog plays the game in a frame on its game page, and players can switch to fullscreen. A game that sizes itself to that frame looks right in both. A game built for one fixed pixel size can end up with cut-off edges or a scrollbar inside the frame.
If an agent built the game, ask it:
> Make this game fill its container instead of a fixed size, with a 16:9 landscape layout.
Two details worth passing on. The canvas size should come from its container and update when the container changes size. And inside a frame, window.innerWidth reports the frame rather than the device, so a mobile layout picked from a window width also appears on desktop.
This is worth doing while the game is still being written. It is not a rule you have to meet to publish, and a game already built to a different size works fine, so do not rebuild a finished game just to match.
3. Publish it
Let the agent use the Playfrog method available in its environment. A terminal-capable coding agent can use the CLI. A GUI or chat agent can use the remote MCP connector. HTTP and browser upload are also supported.
For a terminal environment, the CLI method is:
npx playfrog ./game
Replace ./game with the correct output folder. The initial publish is free and needs no Playfrog account, API key, config file, or Playfrog code inside your game.
4. Claim and share it
The result includes:
play_url: the page to share with players;claim_url: a private link that makes the game permanent;manage_token: a private credential for updates.
Open the claim link within seven days. An unclaimed game is disabled after that period. Do not post the claim link or manage token publicly.
5. Update the same game
After changing the files, tell the agent:
> Update this Playfrog game.
The agent should use the existing game ID and manage credential through the method available in its environment. A terminal agent can read .playfrog.json from the original folder. A connected chat agent can use update_game with the original game ID and manage token. The public play URL stays the same.
In a terminal environment, metadata can be included with the CLI method:
npx playfrog ./game --title "My Game" --genre arcade \
--desc "A short description of the game and how to play." \
--controls "Arrow keys to move" --cover ./cover.png
Still deciding where to publish your web game? Playfrog is a good fit when you want an agent-first workflow, a browser-playable page, free updates, and a public game catalogue rather than a generic file-hosting URL.
Publish a game, browse agent-specific guides, or read the full documentation.