vantage6
The main vantage6 repository: code for the central server, nodes, CLI and Python Client
Science Score: 67.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 2 DOI reference(s) in README -
✓Academic publication links
Links to: zenodo.org -
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (14.8%) to scientific vocabulary
Keywords from Contributors
Repository
The main vantage6 repository: code for the central server, nodes, CLI and Python Client
Basic Info
Statistics
- Stars: 38
- Watchers: 5
- Forks: 14
- Open Issues: 303
- Releases: 200
Metadata Files
README.md
A Privacy Enhancing Technology (PET) Operations platform
[](https://github.com/vantage6/vantage6/actions/workflows/release.yml) [](https://badge.fury.io/py/vantage6) [](https://github.com/vantage6/vantage6/actions/workflows/unit_tests.yml) [](https://coveralls.io/github/vantage6/vantage6?branch=main) [](https://app.codacy.com/gh/vantage6/vantage6/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_grade) [](https://zenodo.org/badge/latestdoi/492818831) [](https://discord.gg/yAyFf6Y) [](https://research-software-directory.org/software/vantage6)
Quickstart • Project structure • Join the community • License • Code of conduct • References
This repository is contains all the vantage6 infrastructure source code. The vantage6 technology enables to manage and deploy privacy enhancing technologies like Federated Learning (FL) and Multi-Party Computation (MPC). Please visit our website to learn more!
You can find more (user) documentation at readthedocs. If you have any questions, suggestions or just want to chat about federated learning: join our Discord) channel.
Infrastructure overview

A High level overview of the vantage6 infrastructure. Vantage6 has both a client-server and peer-to-peer architecture. The client is used by the researcher to create (PET) computation requests. It is also used to manage users, organizations and collaborations. The server contains users, organizations, collaborations, tasks and their results. It provides a central access point for both the clients and nodes. The nodes have access to privacy sensitive data and handle computation requests retrieved from the server. Computation request are executed as separate containers on the node. These containers are connected to containers at other nodes by a VPN network.
:books: Quickstart
Requirements
The vantage6 infrastructure is delivered in Docker images. To run these images, you need to have Docker installed. To install the latest version of the vantage6 CLI, you need to have Python, we recommend using an environment manager like mini-conda.
Install the latest version of the vantage6 CLI by using:
bash
pip install vantage6
This install the v6 commands, which allows you to manage your nodes and servers. To view all available options, run:
bash
v6 --help
For example you can create a local test setup by using:
bash
v6 dev create-demo-network
This creates a local network with a server and two nodes. You can start the network by running:
bash
v6 dev start-demo-network
This will start the server and nodes in the background. You can view the logs by running:
```bash
View node logs
v6 node attach
View server logs
v6 server attach ```
From here you can use the vantage6-client to interact with the server. The demo network has a pre-configured organization with the following credentials:
- Username:
dev_admin - Password:
password
For example, you can create a new organization by running:
```python from vantage6.client import Client
client = Client('http://127.0.0.1', 7601, '/api', loglevel='debug') client.authenticate('devadmin', 'password') client.setup_encryption(None)
client.organization.create( name='My organization', address1='My address', address2='My address', zipcode='1234AB', country='The Netherlands', domain='my-organization.com' ) ```
You can find more (user) documentation at readthedocs
Project structure
PYPI packages
This repository is home to 6 PyPi packages:
- vantage6 -> CLI for managing node and server instances
- vantage6-client -> Python client for interacting with the vantage6-server
- vantage6-algorithm-tools -> Python tools to facilitate algorithm development
- vantage6-node -> Node application package
- vantage6-server -> Server application package
- vantage6-algorithm-store -> Algorithm store application package
- vantage6-common -> Package with common vantage6 functions
- vantage6-backend-common -> Package with functions common to central server and algorithm store
Note that when using vantage6 you do not install the server and node packages. These are delivered to you in Docker images.
This repository also hosts the code for the vantage6 user interface (UI). The UI is an Angular web application that can be used to interact with the vantage6 server easily.
Docker images
The vantage6 infrastructure is delivered in Docker images. All Docker images are stored in our private Harbor registry. The most important images are:
harbor2.vantage6.ai/infrastructure/node:VERSION-> Node application Docker imageharbor2.vantage6.ai/infrastructure/server:VERSION-> Server application Docker imageharbor2.vantage6.ai/infrastructure/ui:VERSION-> User interface Docker imageharbor2.vantage6.ai/infrastructure/algorithm-store:VERSION-> Algorithm store Docker image
with VERSION being the full semantic version of the vantage6 infrastructure, e.g.
4.0.0 or 4.1.0rc0.
Several other images are used to support the infrastructure:
harbor2.vantage6.ai/infrastructure/infrastructure-base:VERSION-> Base image for the infrastructureharbor2.vantage6.ai/infrastructure/squid:VERSION-> Squid proxy image used for the whitelisting serviceharbor2.vantage6.ai/infrastructure/alpine-> Alpine image used for vpn traffic forwardingharbor2.vantage6.ai/infrastructure/vpn-client-> VPN image used to connect to the VPNharbor2.vantage6.ai/infrastructure/vpn-configurator-> VPN image used for initializationharbor2.vantage6.ai/infrastructure/ssh-tunnel-> SSH tunnel image used for connecting algorithms to external services
And finally there are some images released for algorithm development:
harbor2.vantage6.ai/infrastructure/algorithm-base:MAJOR.MINOR-> Base image for algorithm developmentharbor2.vantage6.ai/infrastructure/algorithm-ohdsi-base:MAJOR.MINOR-> Extended algorithm base image for OHDSI algorithm development
:gift_heart: Join the community!
We hope to continue developing, improving, and supporting vantage6 with the help of the federated learning community. If you are interested in contributing, first of all, thank you! Second, please take a look at our contributing guidelines and our code of conduct.
:scroll: License
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.
:black_nib: Code of Conduct
Please note that this project is released with a Contributor Code of Conduct. By participating in any way in this project you agree to abide by its terms.
:black_nib: References
If you are using vantage6, please cite this repository as well as the accompanying papers as follows:
- F. Martin, M. Sieswerda, H. Alradhi, et al. vantage6. Available at https://doi.org/10.5281/zenodo.7221216. Accessed on MONTH, 20XX.
- A. Moncada-Torres, F. Martin, M. Sieswerda, J. van Soest, G. Gelijnse. VANTAGE6: an open source priVAcy preserviNg federaTed leArninG infrastructurE for Secure Insight eXchange. AMIA Annual Symposium Proceedings, 2020, p. 870-877. [BibTeX, PDF]
- D. Smits*, B. van Beusekom*, F. Martin, L. Veen, G. Geleijnse, A. Moncada-Torres, An Improved Infrastructure for Privacy-Preserving Analysis of Patient Data, Proceedings of the International Conference of Informatics, Management, and Technology in Healthcare (ICIMTH), vol. 25, 2022, p. 144-147. [BibTeX, PDF]
Owner
- Name: vantage6
- Login: vantage6
- Kind: organization
- Email: vantage6@iknl.nl
- Website: https://vantage6.ai
- Repositories: 4
- Profile: https://github.com/vantage6
Citation (CITATION.cff)
# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!
cff-version: 1.2.0
title: vantage6
message: >-
If you use this software, please cite it using the
metadata from this file.
type: software
authors:
- given-names: Frank
family-names: Martin
email: f.martin@iknl.nl
affiliation: IKNL
orcid: 'https://orcid.org/0000-0002-5897-1569'
- given-names: Bart
family-names: Beusekom
name-particle: van
email: b.vanbeusekom@iknl.nl
affiliation: IKNL
orcid: 'https://orcid.org/0000-0002-2183-2901'
- given-names: Richard
family-names: Leurs
email: richard.leurs@elastique.nl
affiliation: Elastique
- given-names: Melle
family-names: Sieswerda
email: m.sieswerda@iknl.nl
affiliation: IKNL
orcid: 'https://orcid.org/0000-0003-2025-0771'
- given-names: Johan
name-particle: van
family-names: Soest
email: johan.vansoest@medicaldataworks.nl
affiliation: Maastro
orcid: 'https://orcid.org/0000-0003-2548-0330'
- given-names: Hasan
family-names: Alradhi
email: h.alradhi@iknl.nl
affiliation: IKNL
orcid: 'https://orcid.org/0000-0001-7887-3926'
- email: a.moncadatorres@iknl.nl
given-names: 'Arturo'
family-names: Moncada-Torres
affiliation: IKNL
email: arturomoncadatorres@gmail.com
orcid: https://orcid.org/0000-0001-7233-2117
- given-names: Walter
family-names: Baccinelli
email: w.baccinelli@esciencecenter.nl
affiliation: Netherlands eScience Center
orcid: 'https://orcid.org/0000-0001-8888-4792'
- given-names: Djura
family-names: Smits
email: d.smits@esciencecenter.nl
affiliation: Netherlands eScience Center
orcid: 'https://orcid.org/0000-0003-4096-0260'
- given-names: Luis
family-names: Sanchez Gomez
email: luis.sanchezgomez@medicaldataworks.nl
affiliation: medical data works
- given-names: Alexander
family-names: Harms
affiliation: Erasmus MC
identifiers:
- type: doi
value: 10.5281/zenodo.7221216
description: DOI of the code published on zenodo
repository-code: 'https://github.com/vantage6/vantage6'
url: 'https://vantage6.ai/'
abstract: >+
Vantage6 stands for privacy preserving federated learning
infrastructure for secure insight exchange.
The project is inspired by the Personal Health Train (PHT)
concept. In this analogy vantage6 is the tracks and
stations. Compatible algorithms are the trains, and
computation tasks are the journey. Vantage6 is completely
open source under the Apache License.
What vantage6 does:
delivering algorithms to data stations and collecting
their results
managing users, organizations, collaborations, computation
tasks and their results
providing control (security) at the data-stations to their
owners
The vantage6 infrastructure is designed with three
fundamental functional aspects of federated learning.
Autonomy. All involved parties should remain independent
and autonomous.
Heterogeneity. Parties should be allowed to have
differences in hardware and operating systems.
Flexibility. Related to the latter, a federated learning
infrastructure should not limit the use of relevant data.
keywords:
- federated learning
- machine learning
- data analysis
- secure multiparty computation
- privacy enhancing technology
- personal health train
license: Apache-2.0
Committers
Last synced: 9 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Bart van Beusekom | b****m@i****l | 2,491 |
| fcmartin | f****k@g****l | 2,135 |
| Melle Sieswerda | m****e@s****t | 328 |
| Richard Leurs | r****s@e****l | 181 |
| github-actions | g****s@g****m | 166 |
| Johan van Soest | j****t@m****l | 96 |
| Walter Baccinelli | w****i@e****l | 78 |
| riccardosamperna | r****a@i****l | 66 |
| Hasan | h****i@i****l | 65 |
| dependabot[bot] | 4****] | 59 |
| Luis Sago | l****o@g****m | 46 |
| Djura Smits | d****s@g****m | 43 |
| Arturo Moncada-Torres | 3****s | 40 |
| Johan van Soest | i****o@j****l | 24 |
| IKNL\ETj1805.38211 | e****a@i****l | 24 |
| Rian Schobers | r****s@i****l | 22 |
| Hector Cadavid | h****d@g****m | 10 |
| Alexander Harms | a****s@e****l | 8 |
| Bram Brouwer | b****r@I****L | 6 |
| The Codacy Badger | b****r@c****m | 4 |
| PyTaskManager | p****m@d****e | 4 |
| alessioromita | r****o@g****m | 3 |
| Harm Buisman | h****n@g****m | 1 |
| Jasper Snel | j****e@l****l | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 771
- Total pull requests: 1,328
- Average time to close issues: 5 months
- Average time to close pull requests: 8 days
- Total issue authors: 27
- Total pull request authors: 17
- Average comments per issue: 0.76
- Average comments per pull request: 0.29
- Merged pull requests: 1,078
- Bot issues: 0
- Bot pull requests: 123
Past Year
- Issues: 374
- Pull requests: 591
- Average time to close issues: about 1 month
- Average time to close pull requests: 7 days
- Issue authors: 16
- Pull request authors: 14
- Average comments per issue: 0.36
- Average comments per pull request: 0.34
- Merged pull requests: 463
- Bot issues: 0
- Bot pull requests: 37
Top Authors
Issue Authors
- bartvanb (321)
- frankcorneliusmartin (237)
- harmbuisman (45)
- lsago (45)
- hcadavid (24)
- dsmits (21)
- wbaccinelli (12)
- CunliangGeng (9)
- intGRen (7)
- anjavangestel (7)
- rian-schobers (7)
- mellesies (6)
- yannick-vinkesteijn (6)
- JHogenboom (6)
- jvsoest (2)
Pull Request Authors
- bartvanb (856)
- frankcorneliusmartin (191)
- dependabot[bot] (123)
- hcadavid (33)
- lsago (32)
- dsmits (24)
- wbaccinelli (14)
- CunliangGeng (14)
- rian-schobers (11)
- riccardosamperna (9)
- bbrouweriknl (6)
- stin911 (4)
- mellesies (4)
- tim-hendriks (3)
- harmbuisman (2)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 16
-
Total downloads:
- pypi 46,326 last-month
- Total docker downloads: 86
-
Total dependent packages: 12
(may contain duplicates) -
Total dependent repositories: 31
(may contain duplicates) - Total versions: 1,659
- Total maintainers: 4
- Total advisories: 18
pypi.org: vantage6-client
Vantage6 client
- Homepage: https://github.com/vantage6/vantage6
- Documentation: https://vantage6-client.readthedocs.io/
- License: apache-2.0
-
Latest release: 4.12.2
published 7 months ago
Rankings
pypi.org: vantage6-common
Vantage6 common
- Homepage: https://github.com/vantage6/vantage6
- Documentation: https://vantage6-common.readthedocs.io/
- License: apache-2.0
-
Latest release: 4.12.2
published 7 months ago
Rankings
pypi.org: vantage6
vantage6 command line interface
- Homepage: https://github.com/vantage6/vantage6
- Documentation: https://vantage6.readthedocs.io/
- License: apache-2.0
-
Latest release: 4.12.2
published 7 months ago
Rankings
Advisories (14)
- vantage6 lacks brute-force protection on change password functionality
- vantage6 may create unencrypted tasks in encrypted collaboration
- vantage6 has insecure SSH configuration for node and server containers
- Defining resource name as integer may give unintended access in vantage6
- Improper Access Control in vantage6
- vantage6 vulnerable to Observable Response Discrepancy
- vantage6 remote code execution vulnerability
- vantage6 vulnerable to a username timing attack on recover password/MFA token
- vantage6 refresh tokens do not expire
- vantage6's CORS settings overly permissive
- ...and 4 more
pypi.org: vantage6-algorithm-tools
Vantage6 algorithm tools
- Homepage: https://github.com/vantage6/vantage6
- Documentation: https://vantage6-algorithm-tools.readthedocs.io/
- License: apache-2.0
-
Latest release: 4.12.2
published 7 months ago
Rankings
Maintainers (1)
pypi.org: vantage6-node
vantage6 node
- Homepage: https://github.com/vantage6/vantage6
- Documentation: https://vantage6-node.readthedocs.io/
- License: apache-2.0
-
Latest release: 4.12.2
published 7 months ago
Rankings
pypi.org: vantage6-server
Vantage6 server
- Homepage: https://github.com/vantage6/vantage6
- Documentation: https://vantage6-server.readthedocs.io/
- License: apache-2.0
-
Latest release: 4.12.2
published 7 months ago
Rankings
Advisories (3)
pypi.org: vantage6-algorithm-tools-lg
Vantage6 algorithm tools
- Homepage: https://github.com/vantage6/vantage6
- Documentation: https://vantage6-algorithm-tools-lg.readthedocs.io/
- License: apache-2.0
-
Latest release: 4.10.1
published 8 months ago
Rankings
Maintainers (1)
pypi.org: vantage6-client-blob
Vantage6 client
- Homepage: https://github.com/vantage6/vantage6
- Documentation: https://vantage6-client-blob.readthedocs.io/
- License: apache-2.0
-
Latest release: 4.10.2
published 8 months ago
Rankings
Maintainers (1)
pypi.org: vantage6-common-blob
Vantage6 common
- Homepage: https://github.com/vantage6/vantage6
- Documentation: https://vantage6-common-blob.readthedocs.io/
- License: apache-2.0
-
Latest release: 4.10.2
published 8 months ago
Rankings
Maintainers (1)
pypi.org: vantage6-blob
vantage6 command line interface
- Homepage: https://github.com/vantage6/vantage6
- Documentation: https://vantage6-blob.readthedocs.io/
- License: apache-2.0
-
Latest release: 4.10.2
published 8 months ago
Rankings
Maintainers (1)
pypi.org: vantage6-algorithm-tools-blob
Vantage6 algorithm tools
- Homepage: https://github.com/vantage6/vantage6
- Documentation: https://vantage6-algorithm-tools-blob.readthedocs.io/
- License: apache-2.0
-
Latest release: 4.10.2
published 8 months ago
Rankings
Maintainers (1)
pypi.org: vantage6-common-lg
Vantage6 common
- Homepage: https://github.com/vantage6/vantage6
- Documentation: https://vantage6-common-lg.readthedocs.io/
- License: apache-2.0
-
Latest release: 4.10.1
published 8 months ago
Rankings
Maintainers (1)
pypi.org: vantage6-client-lg
Vantage6 client
- Homepage: https://github.com/vantage6/vantage6
- Documentation: https://vantage6-client-lg.readthedocs.io/
- License: apache-2.0
-
Latest release: 4.10.1
published 8 months ago
Rankings
Maintainers (1)
pypi.org: vantage6-lg
vantage6 command line interface
- Homepage: https://github.com/vantage6/vantage6
- Documentation: https://vantage6-lg.readthedocs.io/
- License: apache-2.0
-
Latest release: 0.1.1
published 8 months ago
Rankings
Maintainers (1)
pypi.org: vantage6-backend-common
Vantage6 common backend functionalities
- Homepage: https://github.com/vantage6/vantage6
- Documentation: https://vantage6-backend-common.readthedocs.io/
- License: apache-2.0
-
Latest release: 4.12.2
published 7 months ago
Rankings
Maintainers (1)
pypi.org: vantage6-algorithm-store
Vantage6 algorithm store
- Homepage: https://github.com/vantage6/vantage6
- Documentation: https://vantage6-algorithm-store.readthedocs.io/
- License: apache-2.0
-
Latest release: 4.12.2
published 7 months ago
Rankings
Maintainers (1)
Dependencies
- sphinx ==4.4.0
- colorama ==0.4.3
- docker ==4.2.0
- SQLAlchemy ==1.3.15
- click ==8.0.3
- colorama ==0.4.3
- docker ==4.2.0
- iPython ==7.16.3
- questionary ==1.5.2
- schema ==0.7.1
- vantage6-common *
- PyJWT ==1.7.1
- SPARQLWrapper ==1.8.5
- cryptography ==3.3.2
- pyfiglet ==0.8.post1
- requests ==2.25.1
- vantage6-common >=1.0.0b13
- PyJWT ==1.7.1
- cryptography ==3.3.2
- pandas *
- requests ==2.25.1
- vantage6-common ==
- PyYAML ==5.4
- appdirs ==1.4.3
- certifi ==2020.4.5.1
- click ==8.0.3
- colorama ==0.4.3
- contextlib2 ==0.5.5
- pyfiglet ==0.8.post1
- schema ==0.7.1
- termcolor ==1.1.0
- wincertstore ==0.2
- PyYAML ==5.4
- appdirs ==1.4.3
- click ==8.0.3
- colorama ==0.4.3
- docker ==4.2.0
- pyfiglet ==0.8.post1
- python-dateutil ==2.8.1
- schema ==0.7.1
- termcolor ==1.1.0
- click ==8.0.3
- cryptography ==3.3.2
- docker ==4.2.0
- gevent ==20.9.0
- python-socketio ==5.5.0
- requests ==2.25.1
- termcolor ==1.1.0
- vantage6-client *
- gevent ==20.9.0
- python-socketio *
- requests ==2.25.1
- Flask-Cors ==3.0.9
- Flask-JWT-Extended ==3.24.1
- Flask-Principal ==0.4.0
- Flask-RESTful ==0.3.9
- Flask-SocketIO ==5.1.1
- SQLAlchemy ==1.3.15
- Werkzeug ==2.0.1
- appdirs ==1.4.3
- bcrypt ==3.1.7
- eventlet ==0.33.0
- flask ==2.0.2
- flask-mail ==0.9.1
- flask-marshmallow ==0.11.0
- gevent ==20.9.0
- gevent-websocket ==0.10.1
- iknl-flasgger ==0.9.2.post1
- ipython ==7.16.3
- jinja2 ==3.0.3
- kombu ==5.2.2
- marshmallow ==2.16.3
- marshmallow-sqlalchemy ==0.15.0
- psutil ==5.7.0
- questionary ==1.5.2
- requests ==2.25.1
- requests-oauthlib ==1.3.0
- schema ==0.7.1
- Flask-Cors ==3.0.9
- Flask-JWT-Extended ==3.24.1
- Flask-Mail ==0.9.1
- Flask-Principal ==0.4.0
- Flask-RESTful ==0.3.9
- Flask-SocketIO ==5.1.1
- SQLAlchemy ==1.3.15
- Werkzeug ==2.0.1
- appdirs ==1.4.3
- bcrypt ==3.1.7
- eventlet ==0.33.0
- flasgger ==0.9.5
- flask ==2.0.2
- flask-marshmallow ==0.11.0
- gevent ==20.9.0
- gevent-websocket ==0.10.1
- ipython ==7.16.3
- jinja2 ==3.0.3
- kombu ==5.2.2
- marshmallow ==2.16.3
- marshmallow-sqlalchemy ==0.15.0
- psutil ==5.7.0
- questionary ==1.5.2
- requests ==2.25.1
- requests-oauthlib ==1.3.0
- schema ==0.7.1
- vantage6 *
- actions/checkout v3 composite
- github/codeql-action/analyze v2 composite
- github/codeql-action/autobuild v2 composite
- github/codeql-action/init v2 composite
- actions/github-script v6 composite
- actions/checkout v3 composite
- actions/setup-python v4 composite
- docker/setup-buildx-action v2 composite
- docker/setup-qemu-action v2 composite
- softprops/action-gh-release v1 composite
- actions/checkout v3 composite
- actions/setup-python v4 composite
- coverallsapp/github-action master composite
- harbor2.vantage6.ai/infrastructure/server latest
- postgres 10
- furo ==2022.12.7
- sphinx ==5.3.0
- sphinx-autobuild *
- sphinx-autodoc-typehints *
- sphinx-click ==4.4.0
- PyJWT ==2.6.0
- SPARQLWrapper >=2.0.0
- openpyxl >=3.0.0
- pandas >=1.5.3
- pyfiglet ==0.8.post1
- PyJWT ==2.6.0
- SPARQLWrapper >=2.0.0
- openpyxl >=3.0.0
- pandas >=1.5.3
- pyfiglet ==0.8.post1
- vantage6-common ==
- actions/checkout v3 composite
- psf/black stable composite
- Flask-Cors ==3.0.10
- Flask-Principal ==0.4.0
- Flask-RESTful ==0.3.10
- SQLAlchemy ==1.4.46
- flasgger ==0.9.5
- flask ==2.2.5
- flask-marshmallow ==0.15.0
- gevent ==23.9.1
- marshmallow ==3.19.0
- requests ==2.31.0
- schema ==0.7.5
- werkzeug ==3.0.1
- Flask-Cors ==3.0.10
- Flask-Principal ==0.4.0
- Flask-RESTful ==0.3.10
- SQLAlchemy ==1.4.46
- flasgger ==0.9.5
- flask ==2.2.5
- flask-marshmallow ==0.15.0
- gevent ==23.9.1
- marshmallow ==3.19.0
- requests ==2.31.0
- schema ==0.7.5
- vantage6 *
- werkzeug ==3.0.1
- Flask-RESTful ==0.3.10
- SQLAlchemy ==1.4.46
- flask ==2.2.5
- marshmallow ==3.19.0
- marshmallow-sqlalchemy ==0.29.0
- Flask-RESTful ==0.3.10
- SQLAlchemy ==1.4.46
- flask ==2.2.5
- marshmallow ==3.19.0
- marshmallow-sqlalchemy ==0.29.0
- vantage6-common *
