Skip to content

MurineShiftWork/murineshiftwork

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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.

About

No description, website, or topics provided.

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors