Documentation
Yggdrasil is an open-source platform to collect, view, annotate, process and export 2D and 3D medical images. Browsers de-identify and encrypt every file before it is uploaded, so the server stores ciphertext plus a documented list of metadata.
Start here
Section titled “Start here”- Install with Docker Compose: what an instance needs and how to run one.
- Privacy and security model: what is encrypted, who holds the keys, and what the operator can still see.
- Annotating: how work saves itself, and how tasks, shapes, masks, region tasks and corrections work.
- Supported formats: which files each modality takes, how they are recognised, and what to convert first.
- Specifications: the public contracts for manifests, annotations, plugins, processors and the YGG1 encryption format.
- Processor SDK quickstart: run your own model on a project’s data with Python.
- Plugins and the plugin catalog: add modality plugins and annotation types to an installation, and write your own.
- Bulk upload from the command line: upload large datasets with
ygg, de-identified and encrypted on your machine. - Exporting data: choose what to export, who decrypts it, and how to download and check the archive.
One institution per installation
Section titled “One institution per installation”Each installation of Yggdrasil belongs to one institution and holds only that institution’s research projects; partners from other institutions join them as invited members. Another institution installs its own with Docker Compose: the same release, with no closed features, and none of the other installations’ data. Researchers of an institution that runs one request a project from its landing page.
Licensing
Section titled “Licensing”Yggdrasil is free software under the GNU AGPL v3.0, and research use is free under it. An installation that runs a modified version links its own source code from the app (AGPL §13; see the install guide). Companies support development and hosting through sponsorship. For a use the AGPL does not fit, such as a closed product, AImageLab offers a separate licence, agreed case by case: contact AImageLab. The AGPL release stays as it is.
Words used in these pages
Section titled “Words used in these pages”| Term | Meaning |
|---|---|
| Project | A study with its own members, key, manifest and data. |
| Manifest | The versioned JSON document that decides a project’s modalities, tasks, processors and guides. |
| Member | A person with a role in a project: admin, annotator or viewer. Annotators may also be allowed to upload or run processors. |
| Site | A contributing centre inside a project. Members can be limited to their own site’s patients. |
| Processor | An external program that claims jobs, decrypts its inputs and posts results. |
| Export worker | A program a project trusts to decrypt and package exports: this server’s, or one the project’s institution runs. |
| Superadmin | An operator of the instance. Superadmins manage projects and accounts but cannot read project data. |