Skip to content

Commit ff0023d

Browse files
author
Thinh Nguyen
authored
Merge pull request #24 from kabilar/main
Update readme and docs
2 parents 662eb82 + 86c460b commit ff0023d

File tree

16 files changed

+130
-96
lines changed

16 files changed

+130
-96
lines changed

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
blank_issues_enabled: false
22
contact_links:
33
- name: DataJoint Contribution Guideline
4-
url: https://docs.datajoint.org/python/community/02-Contribute.html
4+
url: https://datajoint.com/docs/community/contribute/
55
about: Please make sure to review the DataJoint Contribution Guidelines

.github/workflows/u24_element_release_call.yaml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@ jobs:
1717
secrets:
1818
TWINE_USERNAME: ${{secrets.TWINE_TEST_USERNAME}}
1919
TWINE_PASSWORD: ${{secrets.TWINE_TEST_PASSWORD}}
20-
GOOGLE_ANALYTICS_KEY: ${{secrets.GOOGLE_ANALYTICS_KEY}}
2120
call_u24_elements_release_alpine:
2221
if: >-
2322
github.event.workflow_run.conclusion == 'success' && github.repository_owner == 'datajoint' && !contains(github.event.workflow_run.head_branch, 'test')
@@ -27,4 +26,3 @@ jobs:
2726
secrets:
2827
TWINE_USERNAME: ${{secrets.TWINE_USERNAME}}
2928
TWINE_PASSWORD: ${{secrets.TWINE_PASSWORD}}
30-
GOOGLE_ANALYTICS_KEY: ${{secrets.GOOGLE_ANALYTICS_KEY}}

CHANGELOG.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,11 @@
33
Observes [Semantic Versioning](https://semver.org/spec/v2.0.0.html) standard and
44
[Keep a Changelog](https://keepachangelog.com/en/1.0.0/) convention.
55

6-
## [0.1.3] - Unreleased
6+
## [0.1.3] - 2023-04-06
77

88
+ Add - Notebook rendering in docs
99
+ Add - Pre-commit, cspell, and markdown linters
10+
+ Update - Docs and readme
1011

1112
## [0.1.2] - 2022-10-21
1213

README.md

Lines changed: 21 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,26 @@
11
# DataJoint Element - Electrode Localization
22

3-
DataJoint Element for electrode localization using Allen Brain Atlases. DataJoint
4-
Elements collectively standardize and automate data collection and analysis for
5-
neuroscience experiments. Each Element is a modular pipeline for data storage and
6-
processing with corresponding database tables that can be combined with other Elements
3+
DataJoint Element for localizing Neuropixels electrodes within the Allen brain atlas -
4+
[Allen Mouse Common Coordinate Framework (CCF)](http://atlas.brain-map.org/). DataJoint
5+
Elements collectively standardize and automate data collection and analysis for
6+
neuroscience experiments. Each Element is a modular pipeline for data storage and
7+
processing with corresponding database tables that can be combined with other Elements
78
to assemble a fully functional pipeline.
89

9-
![diagram](https://raw.githubusercontent.com/datajoint/element-electrode-localization/main/images/diagram_flowchart.svg)
10+
## Experiment Flowchart
1011

11-
Installation and usage instructions can be found at the
12-
[Element documentation](https://datajoint.com/docs/elements/element-electrode-localization).
12+
![flowchart](https://raw.githubusercontent.com/datajoint/element-electrode-localization/main/images/flowchart.svg)
13+
14+
## Data Pipeline
15+
16+
![pipeline](https://raw.githubusercontent.com/datajoint/element-electrode-localization/main/images/pipeline.svg)
17+
18+
## Getting Started
19+
20+
+ Install from PyPI
21+
22+
```bash
23+
pip install element-electrode-localization
24+
```
25+
26+
+ [Documentation & Tutorials](https://datajoint.com/docs/elements/element-electrode-localization)

docs/.docker/pip_requirements.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,4 +8,5 @@ mkdocs-gen-files
88
mkdocs-literate-nav
99
mkdocs-exclude-search
1010
mkdocs-markdownextradata-plugin
11-
mkdocs-jupyter
11+
mkdocs-jupyter
12+
mkdocs-section-index

docs/docker-compose.yaml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
11
# MODE="LIVE|QA|BUILD" PACKAGE=element_electrode_localization UPSTREAM_REPO=https://github.com/datajoint/element-electrode-localization.git HOST_UID=$(id -u) docker compose -f docs/docker-compose.yaml up --build
2-
#
3-
# navigate to http://localhost/
42
version: "2.4"
53
services:
64
docs:

docs/mkdocs.yaml

Lines changed: 11 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,11 @@ repo_url: https://github.com/datajoint/element-electrode-localization
66
repo_name: datajoint/element-electrode-localization
77
nav:
88
- Element Electrode Localization: index.md
9-
- Concepts: concepts.md
9+
- Data Pipeline: pipeline.md
1010
- Tutorials:
11-
- Overview: tutorials/index.md
11+
- tutorials/index.md
1212
- Notebook: tutorials/08-electrode-localization.ipynb
13+
- Concepts: concepts.md
1314
- Citation: citation.md
1415
- API: api/ # defer to gen-files + literate-nav
1516
- Changelog: changelog.md
@@ -44,17 +45,14 @@ nav:
4445
# UPSTREAM_REPO=https://github.com/datajoint/element-{ELEMENT}.git \
4546
# HOST_UID=$(id -u) docker compose -f docs/docker-compose.yaml up --build
4647
# ```
47-
# 02. Site analytics depend on a local environment variable GOOGLE_ANALYTICS_KEY
48-
# You can find this in LastPass or declare with any string to suppress errors
49-
# 03. The API section will pull docstrings.
48+
# 02. The API section will pull docstrings.
5049
# A. Follow google style guide e.g.,
5150
# https://sphinxcontrib-napoleon.readthedocs.io/en/latest/example_google.html
5251
# With typing suggestions: https://docs.python.org/3/library/typing.html
5352
# B. To pull a specific workflow fork, change ./docs/src/api/make_pages.py#L19
54-
# 04. To see your fork of the workflow-{element} in this render, change the
53+
# 03. To see your fork of the workflow-{element} in this render, change the
5554
# URL in ./docs/src/api/make_pages.py#L19 to your fork.
56-
# 05. For redirecting options For redirect options, see 'redirects' below.
57-
# 06. To deploy this site on your fork,
55+
# 04. To deploy this site on your fork,
5856
# A. declare a branch called gh-pages
5957
# B. go to the your fork > settings > pages
6058
# C. direct pages to render from the gh-pages branch at root
@@ -89,9 +87,7 @@ theme:
8987
plugins:
9088
- markdownextradata: {}
9189
- search
92-
# - redirects: # OPTIONAL REDIRECTS
93-
# redirect_maps:
94-
# "index.md": "getting_started.md"
90+
- section-index
9591
- mkdocstrings:
9692
default_handler: python
9793
handlers:
@@ -110,7 +106,6 @@ plugins:
110106
- "*/navigation.md"
111107
- mkdocs-jupyter:
112108
ignore_h1_titles: True
113-
- footnotes
114109
markdown_extensions:
115110
- attr_list
116111
- toc:
@@ -131,13 +126,13 @@ markdown_extensions:
131126
linenums: true
132127
- pymdownx.inlinehilite
133128
- pymdownx.snippets
134-
129+
- footnotes
130+
- pymdownx.magiclink # Displays bare URLs as links
131+
- pymdownx.tasklist: # Renders check boxes in tasks lists
132+
custom_checkbox: true
135133
extra:
136134
PATCH_VERSION: !ENV PATCH_VERSION
137135
generator: false # Disable watermark
138-
analytics:
139-
provider: google
140-
property: !ENV GOOGLE_ANALYTICS_KEY
141136
version:
142137
provider: mike
143138
social:

docs/src/citation.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,4 @@ Resource Identifier (RRID).
77
Reimer J, Walker EY, Tolias AS. DataJoint Elements: Data Workflows for
88
Neurophysiology. bioRxiv. 2021 Jan 1. doi: https://doi.org/10.1101/2021.03.30.437358
99

10-
+ DataJoint Elements ([RRID:SCR_021894](https://scicrunch.org/resolver/SCR_021894)) -
11-
Element Electrode Localization (version {{ PATCH_VERSION }})
10+
+ DataJoint Element Electrode Localization - [RRID:SCR_021894](https://scicrunch.org/resolver/SCR_021894) - Version {{ PATCH_VERSION }}

docs/src/concepts.md

Lines changed: 17 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -7,64 +7,29 @@ studies wherein in vitro slices were compared to develop a complete model of the
77
With dyes, researchers could compare recordings to the reconstructed location of a given
88
recording device. Through clever experimental design, researchers could further
99
associate highly localized regions to their task-dependent function. Advances in 3D
10-
modeling have permitted parallel advances in multi-subject averaged anatomical models.
11-
An atlas serves as a shared reference frame for a given species.
12-
[The Allen Institute](https://mouse.brain-map.org/) has been a leader in the development
13-
of mouse atlases since 2007[^1], with regular
14-
updates[^2] that provide researchers with a shared reference
15-
frame in the study of functional neuroanatomy.
16-
17-
[^1]: Lein, E. S., Hawrylycz, M. J., Ao, N., Ayres, M., Bensinger, A., Bernard, A., ...
18-
& Jones, A. R. (2007). Genome-wide atlas of gene expression in the adult mouse
19-
brain. *Nature*, 445(7124), 168-176.
20-
21-
[^2]: Wang, Q., Ding, S. L., Li, Y., Royall, J., Feng, D., Lesnar, P., ... & Ng, L.
22-
(2020). The Allen mouse brain common coordinate framework: a 3D reference atlas.
23-
*Cell*, 181(4), 936-953.
24-
25-
## Element Architecture
26-
27-
Each of the DataJoint Elements are a set of tables for common neuroinformatics
28-
modalities to organize, preprocess, and analyze data. Each node in the following diagram
29-
is either a table in the Element itself or a table that would be connected to the
30-
Element.
31-
32-
![element-electrode-localization diagram](https://raw.githubusercontent.com/datajoint/element-electrode-localization/main/images/diagram_electrode_localization.svg)
33-
34-
The Element is separated into two schemas:
35-
36-
+ `coordinate_framework` ingests standard atlases and retains voxel-based lookup tables,
37-
including references to brain region information, acronyms and standardized color
38-
codes.
39-
+ `electrode_localization` pairs the above reference tables with Neuropixels probe
40-
location data in a `probe` schema, optionally from
41-
[Element Array Ephys](https://github.com/datajoint/element-array-ephys)
10+
modeling have permitted parallel advances in multi-subject averaged anatomical atlases,
11+
which serve as a shared reference frame to study functional neuroanatomy.
12+
The [Allen Institute](https://mouse.brain-map.org/){:target="_blank"} has been a leader in the development of such mouse atlases since 2007
13+
([Lein et al., Nature 2007](https://doi.org/10.1038/nature05453){:target="_blank"};
14+
[Wang et al., Cell 2020](https://doi.org/10.1016/j.cell.2020.04.007){:target="_blank"}).
4215

4316
## Key Partnerships
4417

45-
In coordination with both the Mesoscale Activity Project and the International Brain
46-
Lab, DataJoint developed mechanisms for pairing recording coordinates with the published
47-
atlases in project-specific cases that have since been generalized.
48-
49-
## Pipeline Development and Limitations
50-
51-
The Element's table architecture was generalized from existing project-specific
52-
pipelines such as International Brain Laboratory's
53-
[iblapps](https://github.com/int-brain-lab/iblapps/wiki/) as well as the Allen
54-
Institute's
55-
[atlas files](https://community.brain-map.org/t/allen-mouse-ccf-accessing-and-using-related-data-and-tools/359).
18+
Labs have developed project-specific DataJoint pipelines for pairing the coordinates of recording electrodes with the location in published atlases. The DataJoint team collaborated with several and interviewed these teams to understand their experiment workflow, associated tools, and interfaces. These teams include:
5619

57-
One notable consession was made in development: acronyms in DataJoint do not perfectly
58-
map on to the Allen Institute's published standard. By default, DataJoint databases are
59-
not case sensitive. Instead, acronyms are converted to
60-
[snake case](https://en.wikipedia.org/wiki/Snake_case) to avoid naming collisions. While
61-
we depart from the standard, preliminary interviews with users indicate no bias toward
62-
the official standard. Visit our
63-
[localization notebook](https://github.com/datajoint/workflow-array-ephys/blob/main/notebooks/08-electrode-localization.ipynb)
64-
for a demonstration of converting between the case sensitive and snake case standards.
20+
+ Mesoscale Activity Project
21+
+ International Brain Lab
6522

66-
## Roadmap
23+
## Element Roadmap
6724

25+
Through our interviews and direct collaboration on the key projects, we identified the common motifs to create Element Electrode Localization with the repository hosted on [GitHub](https://github.com/datajoint/element-electrode-localization){:target="_blank"}.
6826
Further development of this Element is community driven. Upon user requests we will
6927
continue adding features to this Element, such as improved region- and subregion-based
7028
topological referencing.
29+
30+
- [x] Generalize the table architecture from existing project-specific pipelines:
31+
32+
- [x] International Brain Laboratory's
33+
[iblapps](https://github.com/int-brain-lab/iblapps/wiki/){:target="_blank"}
34+
35+
- [x] Allen Institute's [atlas files](https://community.brain-map.org/t/allen-mouse-ccf-accessing-and-using-related-data-and-tools/359){:target="_blank"}

docs/src/index.md

Lines changed: 28 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,32 @@
11
# Element Electrode Localization
22

3-
This Element features DataJoint schemas for localizing Neuropixels electrodes within
4-
the [Allen Mouse Common Coordinate Framework (CCF)](http://atlas.brain-map.org/).
3+
DataJoint Element for localizing Neuropixels electrodes within the Allen brain atlas -
4+
[Allen Mouse Common Coordinate Framework (CCF)](http://atlas.brain-map.org/){:target="_blank"}. DataJoint
5+
Elements collectively standardize and automate data collection and analysis for
6+
neuroscience experiments. Each Element is a modular pipeline for data storage and
7+
processing with corresponding database tables that can be combined with other Elements
8+
to assemble a fully functional pipeline.
59

6-
![diagram](https://raw.githubusercontent.com/datajoint/element-electrode-localization/main/images/diagram_flowchart.svg)
10+
## Experiment Flowchart
711

8-
The Element consists of `coordinate_framework` and `electrode_localization`. Visit the
9-
[Concepts page](./concepts.md) for more information about the use cases of this Element
10-
and an explanation of the tables.
12+
![flowchart](https://raw.githubusercontent.com/datajoint/element-electrode-localization/main/images/flowchart.svg)
13+
14+
## Data Pipeline
15+
16+
![pipeline](https://raw.githubusercontent.com/datajoint/element-electrode-localization/main/images/pipeline.svg)
17+
18+
## Getting Started
19+
20+
+ Install from PyPI
21+
22+
```bash
23+
pip install element-electrode-localization
24+
```
25+
26+
+ [Data Pipeline](./pipeline.md) - Pipeline and table descriptions
27+
28+
+ [Tutorials](./tutorials.md) - Start building your data pipeline
29+
30+
+ [Concepts](./concepts.md) - Key partnerships and roadmap
31+
32+
+ [Code Repository](https://github.com/datajoint/element-electrode-localization/){:target="_blank"}

0 commit comments

Comments
 (0)