Skip to main content

12 LABOURS DigitalTWINS API

A Python tool for interacting with the 12 LABOURS DigitalTWINS (Digital Translational Workflows for Integrating Systems) platform

Python 3 Contributors Stargazers GitHub issues-closed apache License Contributor Covenant PyPI version fury.io

Table of contents

Introduction

The development of novel medical diagnosis and treatment approaches requires understanding how diseases that operate at the molecular scale influence physiological function at the scale of cells, tissues, organs, and organ systems. The Auckland Bioengineering Institute (ABI) led Physiome Project aims to establish an integrative “systems medicine” framework based on personalised computational modelling to link information encoded in the genome to organism-wide physiological function and dysfunction in disease. The 12 LABOURS project aims to extend and apply the developments of the Physiome Project to clinical and home-based healthcare applications.

As part of the 12 LABOURS project, we are building a DigitalTWINS platform to provide common infrastructure:

  • A data catalogue that describes what data is available, what it can be used for, and how to request it.
  • A harmonised data repository that provides access control to primary and derived data (waveforms, medical images, electronic health records, measurements from remote monitoring devices such as wearables and implantables etc), tools, and workflows that are stored with a standardised dataset description.
  • Describe computational physiology workflows in a standardised language (including workflows for knowledge discovery, clinical translation, or education, etc), and run and monitor their progress.
  • Securely access electronic health records from health systems (WIP).
  • Securely link data from remote monitoring devices such as wearables and implantables into computational physiology workflows.
  • A web portal to enable different researchers, including researchers, clinicians, patients, industry, and the public, to interact with the platform.
  • Guidelines for data management.
  • Guidelines for clinical translation of computational physiology workflows and digital twins via commercialisation
  • Unified ethics application templates that aim to maximise data reusability and linking to enable our vision for creating integrated and personalised digital twins.

Please see the User Documentation for the DigitalTWINS platform for more information in the current capabilities of the platform.

These efforts are aimed at supporting an ecosystem to:

  • Make research outcomes FAIR (Findable, Accessible, Interoperable, and Reusable).
  • Enable reproducible science.
  • Meet data sovereignty requirements.
  • Support clinical translation via commercialisation by enabling researchers to conduct clinical trials more efficiently to demonstrate the efficacy of their computational physiology workflows.
  • Provide a foundation for integrating research developments across different research groups for assembling more comprehensive computational physiology/digital twin workflows.

If you find the DigitalTWINS platform useful, please add a GitHub Star to support developments!

Storing datasets in the DigitalTWINS platform

Data within the DigitalTWINS platform is stored in the SPARC Dataset Structure (SDS). More information about SDS datasets can be found on the SPARC project's documentation. The use of SDS datasets in the 12 LABOURS DigitaTWINS platform is described in the following presentation.

Installing the DigitalTWINS platform API

This code repository provides a Python API tool to enable users to connect to and interact with the DigitalTWINS platform programmatically.

Pre-requisites

  • Python 3.9+. Tested on:
    • 3.9
  • Operating system. Tested on:
    • Ubuntu 20.04
    • Windows 10
    • Mac 13.3, 13.5

User installation

The DigitalTWINS platform Python API is called digitaltwins. It is designed to be used with the sparc-me python tool.

  1. Setting up a virtual environment (optional but recommended)

    It is recommended to use a virtual environment instead of your system environment. Your integrated development environment (IDE) software e.g. (PyCharm, VisualStudio Code etc) provides the ability to create a Python virtual environment for new projects. The code below shows how to create a new Python virtual environment directly from the Linux or Mac terminal or from the Windows PowerShell (will be stored in a new folder named venv in the current working directory), and how to activate the virtual environment.

    • Linux
    python3 -m venv venv
    source venv/bin/activate
    
    • Windows
    python3 -m venv venv
    venv\Scripts\activate
    
  2. Installing digitaltwins and sparc-me from PyPI

    pip install digitaltwins
    pip install sparc-me
    

Developer installation

  1. Downloading source code

    Clone the source code repository from github, e.g.:

    git clone https://github.com/ABI-CTT-Group/digitaltwins-api.git
    
  2. Setting up a virtual environment (optional but recommended)

    See step 1 in the user installation instructions.

  3. Installing dependencies via pip

    pip install -r requirements.txt
    

Using the DigitalTWINS platform

Please see the documentation for workshop 1, which describes how to use the 12 LABOURS DigitalTWINS platform and its API.

Reporting issues

To report an issue or suggest a new feature, please use the issues page. Issue templates are provided to allow users to report bugs, and documentation or feature requests. Please check existing issues before submitting a new one.

Contributing

Fork this repository and submit a pull request to contribute. Before doing so, please read our Code of Conduct and Contributing Guidelines. Pull request templates are provided to help developers describe their contribution, mention the issues related to the pull request, and describe their testing environment.

License

The DigitalTWINS platform API is fully open source and distributed under the very permissive Apache License 2.0. See LICENSE for more information.

Team

  • Chinchien Lin (12L, CTT, BBRG)
  • Linkun Gao (12L, CTT, BBRG)
  • Jiali Xu (12L, CTT)
  • David Yu (12L portal)
  • Frances Feng (12L portal)
  • Alan Wu (12L portal)
  • David Nickerson (12L, SPARC DRC, CTT)
  • Thiranja Prasad Babarenda Gamage (12L, CTT, BBRG)

Funding

This software was funded by the New Zealand Ministry of Business Innovation and Employment’s Catalyst: Strategic fund. This research is also supported by the use of the Nectar Research Cloud, a collaborative Australian research platform supported by the National Collaborative Research Infrastructure Strategy-funded ARDC.

Acknowledgements

We gratefully acknowledge the valuable contributions from:

  • University of Auckland
    • Auckland Bioengineering Institute (ABI) Clinical Translational Technologies Group (CTT)
    • ABI 12 LABOURS project
    • ABI Breast Biomechanics Research Group (BBRG)
    • Infrastructure and technical support from the Centre for eResearch (including Anita Kean)
  • New Zealand eScience Infrastructure (NeSI)
    • Nathalie Giraudon, Claire Rye, Jun Huh, and Nick Jones
  • Gen3 team at the Centre for Translational Data Science at the University of Chicago
  • Members of the SPARC Data and Resource Center (DRC).
acknowledgements.jpg

Metadata

Release files for digitaltwins 0.3.16

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for digitaltwins 0.3.16
File Size Uploaded Provenance Actions
digitaltwins-0.3.16.tar.gz 73.7 kB Without provenance Details for digitaltwins-0.3.16.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for digitaltwins 0.3.16
File Interpreter ABI Platform Actions
digitaltwins-0.3.16-py3-none-any.whl Python 3 none any Details for digitaltwins-0.3.16-py3-none-any.whl

Total release size: 163.2 kB

Release files / digitaltwins-0.3.16.tar.gz

Download URL digitaltwins-0.3.16.tar.gz
Size 73.7 kB
Tags Source
SHA-256 checksum
How to use checksums
670af5634e61960b1ee90df7402a941ae394f2071dea8b5600189533fd9fcebf
BLAKE2b-256 checksum
How to use checksums
68887ffeb73b5e45ef56d8bc0068ff9c073b87be300764415a102c79ebb31def
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.9.0

Release files / digitaltwins-0.3.16-py3-none-any.whl

Download URL digitaltwins-0.3.16-py3-none-any.whl
Size 89.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
3a419254835cf1d80f06abb2442ff7ff8d78404e973ea8515cfc2673f24192f7
BLAKE2b-256 checksum
How to use checksums
8216b44c49548e7f9545ba70a931b81954cc11ba69da725537032a05669237f2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.9.0

Security for digitaltwins 0.3.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page