Skip to main content

A PsychoPy plugin for using the Brain Imaging Data Structure (BIDS) to organize and describe data.

Reason this release was yanked:

duplicate

Project description

psychopy-bids

A PsychoPy plugin to work with the Brain Imaging Data Structure (BIDS).


Breaking Changes in Non-Patch Versions

Non-patch versions (e.g., v2025.1.0, v2026.0.0) are major or minor releases that can introduce substantial new features or changes, potentially breaking compatibility. For previously written experiments, it is strongly recommended to continue using the specific version of psychopy-bids they were created with. Only upgrade to a newer psychopy-bids version for new experiments.

For more details, see the Changelog.


Installation

Recommended: Install via PsychoPy Plugin Manager

The easiest way to install psychopy-bids is through the PsychoPy Plugin Manager:

  1. Open PsychoPy.
  2. Go to the Tools menu and select Plugin/packages manager.
  3. Search for psychopy-bids in the list.
  4. Click Install.

Alternative: Install via pip

You can install psychopy-bids using pip:

pip install psychopy-bids

Usage

The psychopy bids plugin can be used to create valid BIDS valid datasets by creating behavioral or task events in Psychopy. This can be done directly in python code or using the psychopy builder.

In code, the BIDSHandler can create or extend an existing BIDS dataset, including directory structure and necessary metadata files. Individual BIDS events can be added during the experiment and are passed to the BIDSHandler to write event .tsv files and accompanying .json files.

from psychopy_bids import bids

handler = bids.BIDSHandler(dataset="example_dataset", subject="01", task="A")
handler.createDataset()

events = [
    bids.BIDSTaskEvent(onset=1.0, duration=0.5, event_type="stimulus", response="correct"),
    bids.BIDSTaskEvent(onset=1.0, duration=0, trial_type="trigger")
]

handler.addEvent(events)

participant_info = {"participant_id": handler.subject, "age": 18}

handler.writeEvents(participant_info=participant_info)
handler.addEnvironment()

Contributing

Interested in contributing? Check out the contributing guidelines. Please note that this project is released with a Code of Conduct. By contributing to this project, you agree to abide by its terms.


License

psychopy-bids was created by Christoph Anzengruber, Florian Schöngaßner & Lukas Wiertz. It is licensed under the terms of the GNU General Public License v3.0 license.


Credits

psychopy-bids was created with cookiecutter and the py-pkgs-cookiecutter template.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

psychopy_bids-2026.1.1.tar.gz (22.6 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

psychopy_bids-2026.1.1-py3-none-any.whl (183.6 kB view details)

Uploaded Python 3

File details

Details for the file psychopy_bids-2026.1.1.tar.gz.

File metadata

  • Download URL: psychopy_bids-2026.1.1.tar.gz
  • Upload date:
  • Size: 22.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.20

File hashes

Hashes for psychopy_bids-2026.1.1.tar.gz
Algorithm Hash digest
SHA256 5debbda1a52ff69efb68729c72bb8cd81ed6fc08736064caa005dbd291d13946
MD5 821f49fbbced1b9c3c957c8f8b434c7c
BLAKE2b-256 25743ee1ae2f40a2bb266e32ed6c0b2069a742a4aac96e7e55e3b72a6a72dcd1

See more details on using hashes here.

File details

Details for the file psychopy_bids-2026.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for psychopy_bids-2026.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 954fb585633087595fe30b801b76acded5361fd75cd54f71695b85bbd21fa3cc
MD5 1b9e70daa662acb1f504dffddcce6ba5
BLAKE2b-256 654997047eaacb778af5f7e485ed6849d64bd15f37382a34369eac133068bc9e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page