This release is a pre-release and may not be stable for production use.
__ __ ______ ______ ______ ______ __ ______ __ _____
/\ "-./ \ /\ ___\ /\ ___\ /\ __ \ /\ ___\ /\ \ /\ ___\ /\ \ /\ __-.
\ \ \-./\ \ \ \ __\ \ \___ \ \ \ \/\ \ \ \ __\ \ \ \ \ \ __\ \ \ \____ \ \ \/\ \
\ \_\ \ \_\ \ \_____\ \/\_____\ \ \_____\ \ \_\ \ \_\ \ \_____\ \ \_____\ \ \____-
\/_/ \/_/ \/_____/ \/_____/ \/_____/ \/_/ \/_/ \/_____/ \/_____/ \/____/
Mesofield is a PyQt6-based framework for running real-time, multi-camera
neuroscience experiments. It coordinates hardware via serial connections
and MicroManager (through pymmcore-plus
custom MDAEngines and multi-CMMCorePlus instancing) and manages
experiment configuration, acquisition orchestration, and data logging.
Cameras run on either the MicroManager or an OpenCV backend.
Acquisitions writes an AcquisitionManifest declaring what files saved
according to the mesokit-schema type contract.
The project is aimed at laboratory use and is not a full production package; some specialised knowledge of device hardware and MicroManager device configuration is necessary to get started.
Documentation
Documentation lives at gronemeyer.github.io/mesofield and is split by audience:
- Tutorial — the fastest path from a fresh conda env to a working acquisition on your hardware.
- User Guide —
for experimenters running acquisitions: launching the GUI, writing
experiment.json, interpreting the on-disk output. - Developer Guide —
for developers extending mesofield: custom devices,
Proceduresubclasses, frame processors, threading models. - API Reference — auto-generated from docstrings.
Quick start
conda create -n mesofield python=3.12 -y
conda activate mesofield
pip install -e .
or
pip install mesofield
Register this machine's hardware once, then scaffold an experiment against it:
mesofield rig new my-rig # write a hardware.yaml template to edit
mesofield rig list # show rigs registered on this machine
mesofield init my-experiment # scaffold an experiment (--rig my-rig to skip the prompt)
Launch the acquisition GUI by pointing at a rig name or a path:
mesofield launch dev # mock rig, no hardware required
mesofield launch my-rig # a registered rig by name
mesofield launch path/to/experiment/ # dir: procedure.py + experiment.json + hardware.yaml
mesofield launch path/to/experiment.json # rig + params (sibling hardware.yaml auto-detected)
A scaffolded experiment can also be run headless with python procedure.py.
Beyond acquisition, the CLI is grouped by task — run mesofield <group> --help:
| Command | Purpose |
|---|---|
mesofield launch | init | playback | viewer |
acquisition workflow |
mesofield rig ... |
manage this machine's canonical hardware.yaml rigs |
mesofield datakit ... |
build, explore, profile, and inspect datasets |
mesofield process ... |
batch-process and convert recorded data |
mesofield tools ... |
setup, export, and diagnostic utilities |
For end-to-end setup, follow the Tutorial.
System requirements
Tested on Windows 10/11. For multi-camera acquisition with large files we recommend ≥ 32 GB RAM, a 12th-gen Intel i7 or equivalent, and fast local NVMe storage for the experiment directory.
License
MIT — see LICENSE.
Metadata
Release files for mesofield 0.5.0b0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| mesofield-0.5.0b0.tar.gz | 44.0 MB | With provenance | Details for mesofield-0.5.0b0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| mesofield-0.5.0b0-py3-none-any.whl | Python 3 | none | any | Details for mesofield-0.5.0b0-py3-none-any.whl |
Total release size: 88.0 MB
Release files / mesofield-0.5.0b0.tar.gz
| Download URL | mesofield-0.5.0b0.tar.gz |
|---|---|
| Size | 44.0 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2823fadb4f7af73b3f43bd6638bbb321ffa9057bfdad0db9fe8aabdcce9f3ed1
|
|
BLAKE2b-256 checksum How to use checksums |
46cf14410bed4eeb492b8b8885f1caa07a52e3745192f3075e2b35809e23429b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 7, 2026.
Transparency logRelease files / mesofield-0.5.0b0-py3-none-any.whl
| Download URL | mesofield-0.5.0b0-py3-none-any.whl |
|---|---|
| Size | 44.0 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
dae42d3db0dc15c958c7dfad601eaa2b00b6c927b3e8f3cbea9e68b6f25178ab
|
|
BLAKE2b-256 checksum How to use checksums |
991e44ac2cdef0640d0223258a6d0ee6cd7695485dbb12c16898d369b50e11e0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 7, 2026.
Transparency logSecurity for mesofield 0.5.0b0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for mesofield-0.5.0b0.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 7, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.