Skip to main content

Helper library and interactive anywidgets for the DartBrains fMRI course

Project description

dartbrains-tools

Helper library and interactive anywidgets for the DartBrains fMRI course. Extracted from the book repo so the widgets and helpers can be installed standalone — including in molab and pyodide/WASM marimo notebooks.

Install

pip install dartbrains-tools

# Optional: include marimo for notebook_utils.youtube()
pip install "dartbrains-tools[notebook]"

Modules

  • dartbrains_tools.data — load the Pinel Localizer dataset from the Hugging Face Hub.
  • dartbrains_tools.mr_simulations — Bloch equation solvers, signal generators, HRF, and Plotly visualization helpers.
  • dartbrains_tools.mr_widgets — 10 anywidgets for interactive MR physics teaching (PrecessionWidget, SpinEnsembleWidget, KSpaceWidget, ConvolutionWidget, EncodingWidget, CompassWidget, NetMagnetizationWidget, TransformCubeWidget, CostFunctionWidget, SmoothingWidget).
  • dartbrains_tools.notebook_utils — small marimo helpers (youtube).

Quick start

from dartbrains_tools.mr_widgets import PrecessionWidget

w = PrecessionWidget(b0=3.0, flip_angle=90.0)
w  # Interactive 3D Three.js animation in any anywidget host.
from dartbrains_tools.data import get_subjects, get_file, load_events

subjects = get_subjects()
bold = get_file("S01", "bold")
events = load_events("S01")

Development

git clone https://github.com/ljchang/dartbrains-tools
cd dartbrains-tools
uv sync
uv run pytest
uv build

License

MIT. The parent course materials at dartbrains remain CC-BY-SA-4.0; this companion library is permissive so it can be reused in any downstream project.

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

dartbrains_tools-0.1.1.tar.gz (37.2 kB view details)

Uploaded Source

Built Distribution

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

dartbrains_tools-0.1.1-py3-none-any.whl (45.1 kB view details)

Uploaded Python 3

File details

Details for the file dartbrains_tools-0.1.1.tar.gz.

File metadata

  • Download URL: dartbrains_tools-0.1.1.tar.gz
  • Upload date:
  • Size: 37.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for dartbrains_tools-0.1.1.tar.gz
Algorithm Hash digest
SHA256 61b5c08e31f56ca9e61dccf30db54078483717e453c9d56731027372938103ba
MD5 2026ca403566a4e2bd9caa42e01a7f52
BLAKE2b-256 dca269cea9c6bab1d1e5b2439544083082f785f73f4fef9626d2ff34b25cbe9f

See more details on using hashes here.

Provenance

The following attestation bundles were made for dartbrains_tools-0.1.1.tar.gz:

Publisher: publish.yml on ljchang/dartbrains-tools

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dartbrains_tools-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for dartbrains_tools-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 cb53e45e3349a4b8153fb54f1c2aa1a43bdc42d377ba06eb10e7b63e4853fca9
MD5 54d9e8dcd384ee73d3f9dac7db002c61
BLAKE2b-256 61d478cabc286b54abdc996545c1d4755de4f75a5faf0795f78bf55305a74b42

See more details on using hashes here.

Provenance

The following attestation bundles were made for dartbrains_tools-0.1.1-py3-none-any.whl:

Publisher: publish.yml on ljchang/dartbrains-tools

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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