← Back to creators

Manifest reference

The CLI writes this file for you. You only need this page if you want to change what it guessed.

{
  "slug": "drive-route-66",
  "title": "Drive Route 66",
  "description": "Fly all 2,199 miles of the Mother Road.",
  "engine": "three",
  "build": "dist",
  "entry": "index.html",
  "thumbnail": "cover.png",
  "tags": ["data-viz", "map", "americana"]
}
slugrequired
Your world’s address. Lowercase letters, numbers and dashes, 3–40 characters. Becomes vyrld.com/g/<slug>.
titlerequired
Display name, up to 80 characters.
descriptionoptional
Shown on the world’s page. Plain text, blank lines become paragraphs.
enginedetected
three · babylon · playcanvas · r3f · webgpu · canvas2d · wasm · other
builddetected
Directory to upload, relative to platform.json. Defaults to dist.
entrydefaults
Entry document inside build. Must be .html. Defaults to index.html.
thumbnaildetected
Cover image inside build. Worlds with one get played substantially more.
tagsoptional
Up to 8. These are how people find you on Discover.
networkoptional
Outbound hosts your world needs. Recorded now, enforced in a later release.

What the scanner checks

Every upload is scanned before it goes live. We reject bundles that register a service worker, match a known cryptominer signature, or ship executables. We flag — but do not block — cookie access, frame-busting, obfuscated eval, and password inputs; a person reviews those.

The scanner is a filter, not a guarantee. The real boundary is that every world runs on its own isolated origin, sandboxed away from the platform and from every other world.

Limits

  • · 99MB ZIP upload, 512MB unpacked, 128MB per file, 10,000 files
  • · Entry must be an .html file
  • · No SharedArrayBuffer yet — threaded WASM falls back to single-threaded

Use npx @vyrld/cli@latest publish. Bundles upload directly to storage, then pass size, checksum, and content checks before publishing. If a response is interrupted, the CLI retries the same upload safely.