Use a static browser build with index.html as its entry point. This can be a JavaScript game, an existing HTML game, or an engine's web export. Native executables and projects that require a server process cannot run as a static browser upload. Features requiring special browser headers or server APIs need a compatibility check.
You do not need game.config.json, .spawn/state.json, pnpm, or the SpawnKit CLI for browser ZIP upload. Those requirements belong to generated projects and CLI source deployment.
Use the build command already defined by your project, or your engine's web export. For a plain HTML game, collect its HTML, scripts, styles, and media into one output folder. Keep relative references valid and test the result with a local HTTP server, not only a file:// URL.
These commands run your existing build script; they do not install or switch package managers. Output may be called dist, build, or web-export. Use the directory your tool actually produces. Hosted source-build support is separate from this locally built ZIP workflow.
my-game.zip
├── index.html
├── game.js
├── styles.css
└── assets/
ZIP the contents of the output folder, not the folder itself. Keep the expanded game below 20 MiB and fewer than 1,996 files. ZIP selection is limited to 64 MiB; that does not raise the expanded limit. Exclude source secrets, .env, node_modules, and editor files. See packaging commands for PowerShell and Bash examples; substitute your output directory for dist.
Listing metadata is optional in the archive. If you have no spawnkit.config.json, enter your title, description, genre, and media in the upload form. You do not need to add the SpawnKit Vite plugin to an existing project.
- Open Upload game and sign in.
- Select your ZIP in Game files. Review any imported listing values.
- Complete Details with the title, description, genre, and 2D/3D selection.
- Add or review the cover and optional trailer in Media.
- Choose Deploy game and follow the deployment output. Keep the resulting project and game links. This creates a new project; see Publishing an update before uploading another release of the same game.
A cover can be PNG, JPEG, WebP, or SVG up to 1 MiB. A trailer can be MP4/WebM up to 2 MiB and 60 seconds. Start the clip on gameplay. Media processing warnings can omit invalid listing media without preventing the game from deploying.
- Open the returned game URL and wait for the game to start.
- Test movement, start/restart, sound after a user gesture, and loading additional levels.
- Check browser errors and failed asset requests. Match filename capitalization exactly.
- Test on the devices you plan to list as supported.
This upload flow creates a new project. It is not an update-existing-project control. Keep your project ID and consult the dashboard guide for monitoring and the publishing guide for current update paths. Public discovery approval is separate from hosting success.