Skip to main content

TVB FRAMEWORK

The Virtual Brain framework is a complete framework including:

  • a plugable workflow manager;

  • a data persistence layer (with a relational DB and File Storage);

  • an HTML5 based user interface;

  • visualizers for neuro-science related entities.

The easiest way to make use of this code, is to obtain a Distribution of TVB with Python and all the necessary packages linked, and then clone this repo nearby. More details in our documentation.

Alternatively, if you plan to develop long term with TVB, extensively modify code, add new dependencies, or you simply prefer to use your own Python installation, you may want to read this: here.

If you don’t require the framework features listed above, the simulator and associated scientific modules can be used independently; please see the tvb-library folder.

Framework structure

tvb-gdist
    |
    |
tvb-library     tvb-data
      \          /
        \       /
        tvb.config
            |
            |
        tvb.core
            |
            |
        tvb.adapters
            |
            |
        tvb.config.init
            |
            |
        tvb.interfaces

tvb-data should be installed from Zenodo: https://zenodo.org/record/14992335. After download, unzip and execute pip install -e . in the correct env.

Usage

To use TVB code, clone from GitHub (https://github.com/the-virtual-brain/tvb-root), or get from Pypi:

pip install tvb-framework
python -m tvb.interfaces.web.run WEB_PROFILE tvb.config

Your port 8080 should be free, as a CherryPy service will try to run there. Your default browser should automatically open http://localhost:8080/ which is the way to interact with TVB Web Interface.

Testing

For testing the package, the Pytest framework is used. Pytest can be installed using pip.

In addition to tvb-framework needed just for launching the web, tests require few extra dependencies just for test (e.g. pytest-benchmark), which need to be installed manually. The entire list of these dependencies for testing is found in tvb_framework/pyproject.toml under project.optional-dependencies.

Pytest will run all files in the current directory and its subdirectories of the form test_*.py or *_test.py. More generally, it follows standard test discovery rules

The command for running our tests has two forms. Recommendation when working with a git clone of tvb-framework:

cd [folder_where_tvb_framework_is]
pytest tvb/test/framework [--profile=TEST_POSTGRES_PROFILE] [--junitxml=path]
# default profile value is TEST_SQLITE_PROFILE

The second alternative form of running TVB tests, when installing TVB from Pypi, is:

pip install -U tvb-framework
pytest --pyargs tvb.tests.framework

Coverage

A coverage report can be generated with:

pip install pytest-cov
cd [folder_where_tvb_framework_is]
py.test --cov=tvb tvb/tests/ --cov-branch --cov-report xml:[file_where_xml_will_be_generated]

Further Resources

Acknowledgments

This project has received funding from the European Union’s Horizon 2020 Framework Programme for Research and Innovation under the Specific Grant Agreement Nos. 785907 (Human Brain Project SGA2), 945539 (Human Brain Project SGA3) and VirtualBrainCloud 826421.

This project has received funding from the European Union’s Horizon Europe Programme under the Specific Grant Agreement No. 101147319 (EBRAINS 2.0 Project).

Metadata

Release files for tvb-framework 2.10.0

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

Source distribution (sdist)

Source distribution for tvb-framework 2.10.0
File Size Uploaded
tvb_framework-2.10.0.tar.gz 10.0 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for tvb-framework 2.10.0
File Interpreter ABI Platform
tvb_framework-2.10.0-py3-none-any.whl Python 3 none any Details

Total release size: 21.4 MB

Release files / tvb_framework-2.10.0.tar.gz

Download URL tvb_framework-2.10.0.tar.gz
Size 10.0 MB
Tags Source
SHA-256 checksum
How to use checksums
02dcb79a0c83c7a9f3ce69eaa17ca2f7136b3e0de17b58e90eb679cf889c2422
BLAKE2b-256 checksum
How to use checksums
513d93e07ae2098f64b6e0fd457b7f29dda5698d62f1a9f2057518fad5060580
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.5

Release files / tvb_framework-2.10.0-py3-none-any.whl

Download URL tvb_framework-2.10.0-py3-none-any.whl
Size 11.3 MB
Tags Python 3
SHA-256 checksum
How to use checksums
fc8a59aaba19b09b79c76cc0fc409b80d289cf5cade6e8103105d24a3a31130b
BLAKE2b-256 checksum
How to use checksums
d70448ce4f44f5dd4fb80ed7b02d18f1d500a0a36419561cd37a01196b4cb240
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.5
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