{
  "format": "maru-schema-index/alpha",
  "stability": "alpha: each URL always serves the schema the current contracts generate and may change between website releases. No frozen version exists yet; a frozen version, when one is published, will never change.",
  "doc": "https://maru.audio/docs/schemas",
  "schemas": {
    "project": {
      "about": "Authored source: the files a person writes in a Maru Project.",
      "documents": [
        {
          "name": "project/config",
          "document": "config",
          "url": "https://maru.audio/schema/project/config/alpha.json",
          "stability": "alpha",
          "title": "Maru Project config (maru.config.json)",
          "contract": "maru-project-config/alpha/config",
          "authored": true,
          "doc": "https://maru.audio/docs/schemas#the-project-config"
        }
      ]
    },
    "release": {
      "about": "The published bundle a Project builds into.",
      "documents": [
        {
          "name": "release/web-package",
          "document": "web-package",
          "url": "https://maru.audio/schema/release/web-package/alpha.json",
          "stability": "alpha",
          "title": "Web package manifest inside a Release (web-package.json)",
          "contract": "maru-web-module-package/v1/manifest",
          "authored": false,
          "doc": "https://maru.audio/docs/schemas#generated-documents-and-messages"
        }
      ]
    },
    "face": {
      "about": "The protocol between a module's UI (its face) and the host that runs it.",
      "documents": [
        {
          "name": "face/host-diagnostic",
          "document": "host-diagnostic",
          "url": "https://maru.audio/schema/face/host-diagnostic/alpha.json",
          "stability": "alpha",
          "title": "Host to face diagnostic message",
          "contract": "maru-draft-face/v1/diagnostic-host-message",
          "authored": false,
          "doc": "https://maru.audio/docs/schemas#generated-documents-and-messages"
        },
        {
          "name": "face/host-message",
          "document": "host-message",
          "url": "https://maru.audio/schema/face/host-message/alpha.json",
          "stability": "alpha",
          "title": "Host to face message (typed subset)",
          "contract": "maru-draft-face/v1/host-message",
          "authored": false,
          "doc": "https://maru.audio/docs/schemas#generated-documents-and-messages"
        },
        {
          "name": "face/message",
          "document": "message",
          "url": "https://maru.audio/schema/face/message/alpha.json",
          "stability": "alpha",
          "title": "Face to host message",
          "contract": "maru-draft-face/v1/face-message",
          "authored": false,
          "doc": "https://maru.audio/docs/schemas#generated-documents-and-messages"
        }
      ]
    },
    "preview": {
      "about": "The protocol between an embedded preview frame and the page around it.",
      "documents": [
        {
          "name": "preview/frame-message",
          "document": "frame-message",
          "url": "https://maru.audio/schema/preview/frame-message/alpha.json",
          "stability": "alpha",
          "title": "Frame to host message",
          "contract": "maru-preview/v1/frame-message",
          "authored": false,
          "doc": "https://maru.audio/docs/schemas#generated-documents-and-messages"
        },
        {
          "name": "preview/host-message",
          "document": "host-message",
          "url": "https://maru.audio/schema/preview/host-message/alpha.json",
          "stability": "alpha",
          "title": "Host to frame transport and parameter message",
          "contract": "maru-preview/v1/host-message",
          "authored": false,
          "doc": "https://maru.audio/docs/schemas#generated-documents-and-messages"
        },
        {
          "name": "preview/param",
          "document": "param",
          "url": "https://maru.audio/schema/preview/param/alpha.json",
          "stability": "alpha",
          "title": "Preview parameter schema",
          "contract": "maru-preview/v1/param-schema",
          "authored": false,
          "doc": "https://maru.audio/docs/schemas#generated-documents-and-messages"
        },
        {
          "name": "preview/parent-message",
          "document": "parent-message",
          "url": "https://maru.audio/schema/preview/parent-message/alpha.json",
          "stability": "alpha",
          "title": "Parent page to embedded preview message (?host=parent)",
          "contract": "maru-preview/v1/hosted-host-message",
          "authored": false,
          "doc": "https://maru.audio/docs/schemas#generated-documents-and-messages"
        }
      ]
    }
  }
}
