Skip to content

Commit 2797b66

Browse files
committed
Updated docstrings after review
1 parent 76c4804 commit 2797b66

9 files changed

Lines changed: 64 additions & 49 deletions

File tree

CHANGELOG.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
Observes [Semantic Versioning](https://semver.org/spec/v2.0.0.html) standard and [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) convention.
44

5-
## [0.2.0] - 2022-10-21
5+
## [0.1.4] - 2022-10-21
66
+ Add - mkdocs deployment with workflow API docs
77

88
## [0.1.3] - 2022-10-11

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# DataJoint Element - Miniscope Calcium Imaging
22

3-
DataJoint Element for functional calcium imaging data acquired with the UCLA Miniscope and `Miniscope DAQ V4` acquisition system.
3+
DataJoint Element for functional calcium imaging data acquired with the [UCLA Miniscope](https://github.com/Aharoni-Lab/Miniscope-v4) and [Miniscope DAQ](https://github.com/Aharoni-Lab/Miniscope-DAQ-QT-Software) acquisition system, and analyzed with `CaImAn`.
44
DataJoint Elements collectively standardize and automate data collection and analysis for neuroscience experiments. Each Element is a modular pipeline for data storage and processing with corresponding database tables that can be combined with other Elements to assemble a fully functional pipeline.
55

66
Installation and usage instructions can be found at the

docs/.docker/pip_requirements.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,5 @@ mike
66
mdx-truly-sane-lists
77
mkdocs-gen-files
88
mkdocs-literate-nav
9-
mkdocs-exclude-search
9+
mkdocs-exclude-search
10+
mkdocs-markdownextradata-plugin

docs/docker-compose.yaml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,8 @@ services:
1414
- PACKAGE
1515
- UPSTREAM_REPO
1616
- MODE
17-
- GOOGLE_ANALYTICS_KEY # ALSO THIS?
17+
- GOOGLE_ANALYTICS_KEY
18+
- PATCH_VERSION
1819
volumes:
1920
- ../docs:/main/docs
2021
- ../${PACKAGE}:/main/${PACKAGE}
@@ -27,6 +28,7 @@ services:
2728
- |
2829
git config --global --add safe.directory /main
2930
set -e
31+
export PATCH_VERSION=$$(cat /main/$${PACKAGE}/version.py | grep -oE '\d+\.\d+\.[a-z0-9]+')
3032
if echo "$${MODE}" | grep -i live &>/dev/null; then
3133
mkdocs serve --config-file ./docs/mkdocs.yaml -a 0.0.0.0:80
3234
elif echo "$${MODE}" | grep -iE "qa|push" &>/dev/null; then

docs/mkdocs.yaml

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
# ---------------------- PROJECT SPECIFIC ---------------------------
1+
--- # ---------------------- PROJECT SPECIFIC ---------------------------
22

33
site_name: DataJoint Documentation
4-
site_url: http://localhost/docs/element/element-miniscope
4+
site_url: http://localhost/docs/elements/element-miniscope
55
repo_url: https://github.com/datajoint/element-miniscope
66
repo_name: datajoint/element-miniscope
77
nav:
@@ -23,7 +23,7 @@ nav:
2323
# 02. Instead of designating codeblocks with bash, use console. For example..
2424
# ```console
2525
# cd ../my_dir
26-
# ```
26+
# ```
2727
# 03. Links across docs should ...
2828
# A. Not involve line breaks.
2929
# B. Use relative paths to docs in the same repo
@@ -45,16 +45,16 @@ nav:
4545
# 02. Site analytics depend on a local environment variable GOOGLE_ANALYTICS_KEY
4646
# You can find this in LastPass or declare with any string to suprress errors
4747
# 03. The API section will pull docstrings.
48-
# A. Follow google styleguide e.g.,
48+
# A. Follow google styleguide e.g.,
4949
# https://sphinxcontrib-napoleon.readthedocs.io/en/latest/example_google.html
5050
# With typing suggestions: https://docs.python.org/3/library/typing.html
5151
# B. To pull a specific workflow fork, change ./docs/src/api/make_pages.py#L19
5252
# 04. To see your fork of the workflow-{element} in this render, change the
5353
# URL in ./docs/src/api/make_pages.py#L19 to your fork.
5454
# 05. For redirecting options For redirect options, see 'redirects' below.
55-
# 06. To deploy this site on your fork,
55+
# 06. To deploy this site on your fork,
5656
# A. declare a branch called gh-pages
57-
# B. go to the your fork > settings > pages
57+
# B. go to the your fork > settings > pages
5858
# C. direct pages to render from the gh-pages branch at root
5959
# D. push a tag to your fork with the format test*.*.*
6060
#
@@ -85,6 +85,7 @@ theme:
8585
icon: material/brightness-4
8686
name: Switch to light mode
8787
plugins:
88+
- markdownextradata: {}
8889
- search
8990
# - redirects: # OPTIONAL REDIRECTS
9091
# redirect_maps:
@@ -93,7 +94,7 @@ plugins:
9394
default_handler: python
9495
- gen-files:
9596
scripts:
96-
- ./src/api/make_pages.py
97+
- ./src/api/make_pages.py
9798
- literate-nav:
9899
nav_file: navigation.md
99100
- exclude-search:
@@ -119,8 +120,9 @@ markdown_extensions:
119120
linenums: true
120121
- pymdownx.inlinehilite
121122
- pymdownx.snippets
122-
123+
123124
extra:
125+
PATCH_VERSION: !ENV PATCH_VERSION
124126
generator: false # Disable watermark
125127
analytics:
126128
provider: google
@@ -165,4 +167,4 @@ extra_css:
165167
- assets/stylesheets/extra.css
166168

167169
extra_javascript:
168-
- https://js-na1.hs-scripts.com/23133402.js # HubSpot chatbot
170+
- https://js-na1.hs-scripts.com/23133402.js # HubSpot chatbot

docs/src/citation.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,4 +8,4 @@ Resource Identifier (RRID).
88
Neurophysiology. bioRxiv. 2021 Jan 1. doi: https://doi.org/10.1101/2021.03.30.437358
99

1010
+ DataJoint Elements ([RRID:SCR_021894](https://scicrunch.org/resolver/SCR_021894)) -
11-
Element Miniscope (version `<Enter version number>`)
11+
Element Miniscope (version {{ PATCH_VERSION }})

docs/src/concepts.md

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,18 @@
22

33
## Miniscopes in Neuroscience Research
44

5-
Miniature fluorescence microscopes (miniscopes) are a head-mounted calcium imaging full-frame video modality first introduced in 2005 by Mark Schnitzer's lab ([Flusberg et al., Optics Letters 2005](https://pubmed.ncbi.nlm.nih.gov/16190441/)). Due to their light weight, these miniscopes allow measuring the dynamic activity of populations of cortical neurons in freely behaving animals. In 2011, Inscopix Inc. was founded to support one-photon miniscopes as a commercial neuroscience research platform, providing proprietary hardware, acquisition software, and analysis software. Today, they estimate their active user base is 491 labs with a total of 1179 installs. An open-source alternative was launched by a UCLA team led by Daniel Aharoni and Peyman Golshani ([Cai et al., Nature 2016](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5063500/); [Aharoni and Hoogland, Frontiers in Cellular Neuroscience 2019](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6461004/)). In our conversation with Dr. Aharoni, he estimated about 700 labs currently using the UCLA system alone. The Inscopix user base is smaller but more established. Several two-photon miniscopes have been developed but lack widespread adoption likely due to the expensive hardware required for the two-photon excitation ([Helmchen et al., Neuron 2001](https://pubmed.ncbi.nlm.nih.gov/11580892/); [Zong et al., Nature Methods 2017](https://pubmed.ncbi.nlm.nih.gov/28553965/); [Aharoni and Hoogland, Frontiers in Cellular Neuroscience 2019](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6461004/)). Due to the low costs and ability to record during natural behaviors, one-photon miniscope imaging appears to be the fastest growing calcium imaging modality in the field today. In Year 1, we focused our efforts on supporting the UCLA platform due its fast growth and deficiency of standardization in acquisition and processing pipelines. In future phases, we will reach out to Inscopix to support their platform as well.
5+
Miniature fluorescence microscopes (miniscopes) are a head-mounted calcium imaging full-frame video modality first introduced in 2005 by Mark Schnitzer's lab ([Flusberg et al., Optics Letters 2005](https://pubmed.ncbi.nlm.nih.gov/16190441/)). Due to their light weight, these miniscopes allow measuring the dynamic activity of populations of cortical neurons in freely behaving animals. In 2011, Inscopix Inc. was founded to support one-photon miniscopes as a commercial neuroscience research platform, providing proprietary hardware, acquisition software, and analysis software. Today, they estimate their active user base is 491 labs with a total of 1179 installs.
6+
An open-source alternative was launched by a UCLA team led by Drs. Daniel Aharoni and Peyman Golshani ([Cai et al., Nature 2016](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5063500/); [Aharoni and Hoogland, Frontiers in Cellular Neuroscience 2019](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6461004/)). In our conversation with Dr. Aharoni, he estimated about 700 labs currently using the UCLA system alone. The Inscopix user base is smaller but more established. Several two-photon miniscopes have been developed but lack widespread adoption likely due to the expensive hardware required for the two-photon excitation ([Helmchen et al., Neuron 2001](https://pubmed.ncbi.nlm.nih.gov/11580892/); [Zong et al., Nature Methods 2017](https://pubmed.ncbi.nlm.nih.gov/28553965/); [Aharoni and Hoogland, Frontiers in Cellular Neuroscience 2019](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6461004/)). Due to the low costs and ability to record during natural behaviors, one-photon miniscope imaging appears to be the fastest growing calcium imaging modality in the field today.
7+
The DataJoint team focused efforts on supporting the UCLA platform due rapid growth and limited standardization in acquisition and processing pipelines. In the future, we will reach out to Inscopix to support their platform as well.
68

79
### Acquisition Tools
810

9-
Daniel Aharoni's lab has developed iterations of the UCLA Miniscope platform. Based on interviews, we have found labs using the two most recent versions including [Miniscope DAQ V3](http://miniscope.org/index.php/Information_on_the_(previous_Version_3)_Miniscope_platform) and [Miniscope DAQ V4](https://github.com/Aharoni-Lab/Miniscope-v4/wiki). Labs also use the Bonsai OpenEphys tool for data acquisition with the UCLA miniscope. Inscopix provides the Inscopix Data Acquisition Software (IDAS) for the nVista and nVoke systems.
11+
Dr. Daniel Aharoni's lab has developed iterations of the UCLA Miniscope platform. Based on interviews, we have found labs using the two most recent versions including [Miniscope DAQ V3](http://miniscope.org/index.php/Information_on_the_(previous_Version_3)_Miniscope_platform) and [Miniscope DAQ V4](https://github.com/Aharoni-Lab/Miniscope-v4/wiki). Labs also use the Bonsai OpenEphys tool for data acquisition with the UCLA miniscope. Inscopix provides the Inscopix Data Acquisition Software (IDAS) for the nVista and nVoke systems.
1012

1113
### Preprocessing Tools
1214

1315
The preprocessing workflow for miniscope imaging includes denoising, motion correction, cell segmentation, and calcium event extraction (sometimes described as "deconvolution" or "spike inference"). For the UCLA Miniscopes, the following [analysis packages](https://github.com/Aharoni-Lab/Miniscope-v4/wiki/Analysis-Packages) are commonly used:
1416

15-
(Package, Developer [Affiliation], Programming Language)
16-
1717
+ [Miniscope Denoising](https://github.com/Aharoni-Lab/Miniscope-v4/wiki/Removing-Horizontal-Noise-from-Recordings), Daniel Aharoni (UCLA), Python
1818
+ [NoRMCorre](https://github.com/flatironinstitute/NoRMCorre), Flatiron Institute, MATLAB
1919
+ [CNMF-E](https://github.com/zhoupc/CNMF_E), Pengcheng Zhou (Liam Paninski’s Lab, Columbia University), MATLAB
@@ -54,13 +54,13 @@ Each of the DataJoint Elements are a set of tables for common neuroinformatics m
5454

5555
| Table | Description |
5656
| --- | --- |
57-
| Subject | Basic information of the research subject |
57+
| Subject | Basic information of the research subject. |
5858

5959
### `session` schema ([API docs](https://datajoint.com/docs/elements/element-session/api/element_session/session_with_datetime))
6060

6161
| Table | Description |
6262
| --- | --- |
63-
| Session | Unique experimental session identifier |
63+
| Session | Unique experimental session identifier. |
6464

6565
### `miniscope` schema ([API docs](../api/element_miniscope/miniscope))
6666
Tables related to importing, analyzing, and exporting miniscope data.
@@ -69,16 +69,16 @@ Tables related to importing, analyzing, and exporting miniscope data.
6969
| --- | --- |
7070
| Recording | A table containing information about the equipment used (e.g. the acquisition hardware information). |
7171
| RecordingInfo | The metadata about this recording from the Miniscope DAQ software (e.g. frame rate, number of channels, frames, etc.). |
72-
| MotionCorrection | Information about motion correction performed on a recording. |
73-
| MotionCorrection.RigidMotionCorrection | Details of rigid motion correction (e.g. shiting in x, y). |
74-
| MotionCorrection.NonRigidMotionCorrection and MotionCorrection.Block | These tables are used to describe the non-rigid motion correction. |
75-
| MotionCorrection.Summary | Summary images after motion correction (e.g. average image, correlation image, etc.). |
72+
| MotionCorrection | A table with information about motion correction performed on a recording. |
73+
| MotionCorrection.RigidMotionCorrection | A table with details of rigid motion correction (e.g. shiting in x, y). |
74+
| MotionCorrection.NonRigidMotionCorrection and MotionCorrection.Block | These tables describe the non-rigid motion correction. |
75+
| MotionCorrection.Summary | A table containing summary images after motion correction. |
7676
| Segmentation | This table specifies the segmentation step and its outputs, following the motion correction step. |
7777
| Segmentation.Mask | This table contains the image mask for the segmented region of interest. |
7878
| MaskClassification | This table contains informmation about the classification of `Segmentation.Mask` into a type (e.g. soma, axon, dendrite, artifact, etc.). |
79-
| Fluorescence | The output fluorescence traces extracted from each `Segmentation.Mask`. |
80-
| ActivityExtractionMethod | A record of the activity extraction method (e.g. deconvolution) applied on the fluorescence trace. |
81-
| Activity | The computed neuronal activity trace from fluorescence trace (e.g. spikes). |
79+
| Fluorescence | This table contains the fluorescence traces extracted from each `Segmentation.Mask`. |
80+
| ActivityExtractionMethod | A table with information about the activity extraction method (e.g. deconvolution) applied on the fluorescence trace. |
81+
| Activity | A table with neuronal activity traces from fluorescence trace (e.g. spikes). |
8282

8383
## Pipeline Development
8484

docs/src/index.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# Element Miniscope Calcium Imaging
22

3-
This Element features a DataJoint schema for functional calcium imaging data acquired with the UCLA Miniscope and `Miniscope DAQ V4` acquisition system, and analyzed with `CaImAn`. Each Element is a modular pipeline for data storage and processing with corresponding database tables that can be combined with other Elements to assemble a fully functional pipeline.
3+
DataJoint Element for functional calcium imaging data acquired with the [UCLA Miniscope](https://github.com/Aharoni-Lab/Miniscope-v4) and [Miniscope DAQ](https://github.com/Aharoni-Lab/Miniscope-DAQ-QT-Software) acquisition system, and analyzed with `CaImAn`. DataJoint Elements collectively standardize and automate data collection and analysis for neuroscience experiments. Each Element is a modular pipeline for data storage and processing with corresponding database tables that can be combined with other Elements to assemble a fully functional pipeline.
44

5-
Visit the [Concepts page](./concepts.md) for more information about the tables in the `miniscope` schema. To get started with building your data pipeline visit the [Tutorials page](./tutorials.md).
5+
Visit the [Concepts page](./concepts.md) for more information about miniscope calcium imaging and Element Miniscope. To get started with building your data pipeline visit the [Tutorials page](./tutorials.md).
66

77
![element-miniscope diagram](https://raw.githubusercontent.com/datajoint/element-miniscope/main/images/attached_miniscope_element.svg)

0 commit comments

Comments
 (0)