Documentation menu
On this page

Hosting a worldstream

Build and test your world locally, then choose where it runs. A GENESIS project is portable: you can host it in your own app or upload it to a compatible host.

Prepare your project

Play through the world locally and check its controls, shared rules and media. Validate it and export a complete bundle:

node dist/cli.js validate ./my-world
node dist/cli.js export ./my-world --out ./my-world.zip

The ZIP includes genesis.json, interface.html, controller.js, the JSON Schema and declared assets. Keep model credentials and account settings on the host. Run a starter locally or read about portable projects.

What your host needs

GENESIS supplies the world state, rules and player interface. A public deployment also needs:

  • A server and world worker. Run GenesisHost on Node 20 or later behind authenticated routes. A background worker advances timers, submits generation jobs and checks their results.
  • Persistent storage. Save session state and job results, and serve the project's assets and generated media. Multiple server instances need transactional storage and durable scheduling.
  • Player access. Authenticate participants, admit them to rooms and send each player their permitted state. Keep private and server state protected.
  • Connected models. Register providers for the tools your world uses, such as video, images or structured LLM replies. Store credentials on the server and enforce permissions and spending limits there.
  • Video delivery. Serve prepared clips or connect a continuous streaming provider. Live streams need readiness checks, prompt updates, playback acknowledgments, reconnects and access termination when a session ends.

The local preview runner is intended for development. For a public app, embed mountGenesisPlayer in your frontend and connect it to your authenticated host routes.

See the SDK API, provider guide and host authority for implementation details. You can also use the Worldstreams API for managed generation while running your own app.

Plan for running costs

The GENESIS engine is free under Apache 2.0. Your own deployment pays for its infrastructure, storage, model usage and video delivery. Prepared local examples let you test the interaction loop before connecting paid providers.

Host with Sequencer

Sequencer offers free project hosting for GENESIS worlds, including the player, saved world state and project assets. Live generation and paid tools use gems, with usage priced separately from hosting.

  1. Open the Sequencer dashboard and create a Worldstream.
  2. Upload your exported project ZIP in the Worldstream editor.
  3. Preview your world, save it and publish it. Share the published link so people can join.

Sequencer manages the hosting, accounts and stream delivery. Models and pricing covers generation costs.