Murine Shift Work — behavioural task acquisition with hardware support.
Project description
Murine Shift Work
Behavioural task acquisition with hardware support.
msw run --setup rig-a --subject mouse001 --task sequence
What it does
- Behavioural tasks — sequence learning, probabilistic switching, optotagging, calibration routines
- Hardware abstraction — interchangeable backends for behaviour controllers, cameras, stage, scale, stimulators
- Config system — layered YAML overrides: bundled defaults → rig overlay → task mode → subject → CLI
- Session files — structured
.msw.session.yaml+ JSONL trial data; reader API for analysis - Live plot — per-task online performance display during acquisition
- TTL barcodes — unique per-trial barcodes on BNC output for alignment with parallel recordings
Installation
Requires Python ≥ 3.12 and uv.
pip install murineshiftwork
First-time setup
msw init --config-dir /path/to/msw_configs
msw setup create rig-a
msw subject add -s mouse001
Development
git clone https://github.com/larsrollik/murineshiftwork.git
cd murineshiftwork
uv sync --group dev
uv run pytest tests/
Pre-commit hooks (ruff, mypy, secrets scan):
pre-commit install
Docs
See docs/ for CLI reference, config system, session files, and task guides.
Key architecture decisions are in docs/MASTER_PLAN.md.
License
Copyright © 2021–2026 Lars B. Rollik. See LICENSE for terms.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file murineshiftwork-2.15.0.tar.gz.
File metadata
- Download URL: murineshiftwork-2.15.0.tar.gz
- Upload date:
- Size: 179.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.21 {"installer":{"name":"uv","version":"0.11.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c80f47d019cd8d2693d2366dca8ad6697fe0ede76294d498fa8f6650bfe209e7
|
|
| MD5 |
218338b11e1d8d37cbaf41309f32f4ac
|
|
| BLAKE2b-256 |
5604c933a94a23791b18d7ca439503a4ac4d98b5d4dd7bb6145904aed36fdc55
|
File details
Details for the file murineshiftwork-2.15.0-py3-none-any.whl.
File metadata
- Download URL: murineshiftwork-2.15.0-py3-none-any.whl
- Upload date:
- Size: 4.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.21 {"installer":{"name":"uv","version":"0.11.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
86e65101f9b133a1a66589e96a95f5694ccabff9fdee4ac550a70bad371f9066
|
|
| MD5 |
00ce56504ed573ec0b38a272acfa2dc8
|
|
| BLAKE2b-256 |
6dc668dd7832716b18fdba6aaf30fa06593406c208a7fdf2174a7b3a8a0dd706
|