This quickstart walks through getting a web game live on Wavedash from scratch. It's engine-agnostic — the steps are the same whether you're using Three.js, Phaser, Godot, or anything that produces a folder of HTML and JS files.
You'll need:
- A Wavedash account (sign up free)
- A game that builds to a folder of static files
The CLI is optional. You can upload and publish entirely from the Developer Portal — skip to step 4 if you'd rather not install a CLI. The CLI exists for teams that want a scripted workflow, a local sandbox (wavedash dev), or CI uploads.
1. Install the CLI
curl -fsSL https://wavedash.com/cli/install.sh | sh
Verify it installed:
wavedash --version
2. Authenticate
wavedash auth login
This opens your browser. Approve the login and the CLI saves your credentials locally. You only need to do this once per machine.
3. Initialize your project
From the root of your game repo:
wavedash init
The CLI walks you through picking or creating a team and game, then writes a wavedash.toml to your project:
game_id = "your-game-id"
upload_dir = "./dist"
Make sure upload_dir points at the folder containing your index.html. Change it to match your engine's output directory — ./build, ./out, ./export, etc.
4. Call init()
The Wavedash SDK is automatically injected into the page when your game runs on Wavedash. There's nothing to install — just call init() once when your game boots, before any other SDK methods.
Wavedash.init();
That's the minimum. init() marks the game as loaded and connects to Wavedash services. If you want to show a progress bar while assets load, report progress first:
Wavedash.updateLoadProgressZeroToOne(0.0);
await loadAssets();
Wavedash.updateLoadProgressZeroToOne(1.0);
Wavedash.init();
If you're using TypeScript and want types and editor autocomplete, install @wvdsh/sdk-js:
npm install @wvdsh/sdk-js
import Wavedash from "@wvdsh/sdk-js";
Wavedash.init({ debug: true });
The default export is the live, fully-typed Wavedash SDK singleton — methods, events, and payloads all autocomplete.
See SDK setup for the full init() API, engine-specific wrappers, and load lifecycle details.
5. Test locally
If you have the CLI installed, produce a production build of your game and run:
wavedash dev
This launches the Wavedash Dev app, which runs your build inside the Wavedash sandbox. The SDK works against sandbox data, so leaderboards, achievements, cloud saves, and multiplayer all work without touching production. The first run downloads the dev app; subsequent runs reuse it.
If you're not using the CLI, skip this step and verify your game on wavedash.com after you publish in step 6.
6. Upload and publish
Push your build:
wavedash build push
The CLI packages your upload_dir and uploads it as a new numbered build. Once it finishes, open your game in the Developer Portal, go to the Builds tab, and click "Publish" next to the build you just pushed.

After publishing, open the public game URL in a fresh browser to verify everything works end to end.
Your game is live on Wavedash.
Before you share the link, set up your store page — title, description, screenshots, and tags — in Publishing → Metadata.