Skip to content
This repository was archived by the owner on Jan 22, 2026. It is now read-only.

A high-level API for interacting with the Human Brain Project archival storage at CSCS

License

Notifications You must be signed in to change notification settings

HumanBrainProject/hbp_archive

Repository files navigation

This repository has been archived, as the data stored during the Human Brain Project are no longer accessible using this software. You should instead use the ebrains_storage project to access data through the EBRAINS Data Proxy (Bucket) API.

A high-level API for interacting with the Human Brain Project archival storage at CSCS.

Authors: Andrew Davison (CNRS), Shailesh Appukuttan (CNRS) and Eszter Agnes Papp (University of Oslo)

Documentation: https://hbp-archive.readthedocs.io

Installation: pip install hbp_archive

Usage:

    from hbp_archive import Container, PublicContainer, Project, Archive

    # Working with a public container

    container = PublicContainer("https://object.cscs.ch/v1/AUTH_id/my_container")
    files = container.list()
    local_file = container.download("README.txt")
    print(container.read("README.txt"))
    number_of_files = container.count()
    size_in_MB = container.size("MB")

    # Working with a private container

    container = Container("MyContainer", username="xyzabc")  # you will be prompted for your password
    files = container.list()
    local_file = container.download("README.txt", overwrite=True)  # default is not to overwrite existing files
    print(container.read("README.txt"))
    number_of_files = container.count()
    size_in_MB = container.size("MB")

    container.move("my_file.dat", "a_subdirectory", "new_name.dat")  # move/rename file within a container

    # Reading a file directly, without downloading it

    with container.open("my_data.txt") as fp:
        data = np.loadtxt(fp)

    # Working with a project

    my_proj = Project('MyProject', username="xyzabc")
    container = my_proj.get_container("MyContainer")

    # Listing all your projects

    archive = Archive(username="xyzabc")
    projects = archive.projects
    container = archive.find_container("MyContainer")  # will search through all projects
EU Logo

ACKNOWLEDGEMENTS

This open source software code was developed in part or in whole in the Human Brain Project, funded from the European Union's Horizon 2020 Framework Programme for Research and Innovation under Specific Grant Agreements No. 720270, No. 785907 and No. 945539 (Human Brain Project SGA1, SGA2 and SGA3).

About

A high-level API for interacting with the Human Brain Project archival storage at CSCS

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages