thread-manifest — the World Manifest format of the Thread
The World Manifest is the "HTML" of the Thread: an open, renderer-agnostic
JSON description of a place that any browser can resolve and render. This crate
is the reference implementation of the format — parse, validate, and address
worlds — depending only on serde and thread-id,
so anyone building for the Thread can use or reimplement it with no engine baggage.
In this repository the crate is named
infinite-manifestfor historical reasons; it is published to crates.io asthread-manifest. Seedocs/thread/publish-thread-crates.md.
What it gives you
WorldManifest— the document:worldmetadata,environment(sky, time),spawns,prefabs(built-in or glTF meshes + a standard PBR material), instancedplacements,portals(the hyperlinks — veils to other worlds), sandboxed WASMbehaviors, and optionalpresence.WorldManifest::from_json/validate— parse + check conformance: the version tag is recognized, every reference resolves, and portals address the Thread. The same check the conformance suite runs.Locator— the address of a place:thread://host/world@when#place, withwell_known_url()for decentralized.well-knownhosting.
use ;
let world = from_json?;
println!;
let loc = parse.unwrap;
assert_eq!;
Spec
Normative format: docs/spec/world-manifest-v0.1.md.
Overview of how it fits with addressing, behaviors, presence, and conformance:
docs/spec/thread-protocol-v0.1.md.
License: MIT OR Apache-2.0.