{
"$schema": "http://json-schema.org/draft-07/schema",
"$id": "https://holochain.org/hc/dna-manifest",
"title": "DnaManifest",
"description": "Holochain DNA manifest",
"type": "object",
"additionalProperties": false,
"required": [
"manifest_version",
"name"
],
"properties": {
"manifest_version": {
"type": "string",
"description": "The version of the app manifest schema"
},
"name": {
"type": "string",
"description": "The name of the app"
},
"integrity": {
"type": "object",
"description": "Specification of integrity zomes and properties",
"additionalProperties": false,
"required": [
"origin_time"
],
"properties": {
"network_seed": {
"type": [
"string",
"null"
]
},
"properties": {
"type": [
"object",
"null"
],
"additionalProperties": true
},
"origin_time": {
"type": [
"string",
"null"
]
},
"zomes": {
"type": "array",
"items": {
"$ref": "#/definitions/ZomeManifest"
}
}
}
},
"coordinator": {
"type": "object",
"description": "Coordinator zomes to install with this DNA",
"additionalProperties": false,
"required": [
"zomes"
],
"properties": {
"zomes": {
"type": "array",
"items": {
"$ref": "#/definitions/ZomeManifest"
}
}
}
}
},
"definitions": {
"ZomeManifest": {
"type": "object",
"additionalProperties": false,
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "Just a friendly name, no semantic meaning"
},
"hash": {
"type": "string",
"description": "The hash of the wasm which defines this zome"
},
"bundled": {
"type": "string",
"description": "Expect file to be part of this bundle"
},
"path": {
"type": "string",
"description": "Get file from local filesystem (not bundled)"
},
"url": {
"type": "string",
"description": "Get file from URL"
},
"dependencies": {
"type": "array",
"description": "The integrity zomes this zome depends on",
"items": {
"type": "object",
"additionalProperties": false,
"required": [
"name"
],
"properties": {
"name": {
"type": "string"
}
}
}
}
}
}
}
}