Skip to content

Commit b9fd4a3

Browse files
committed
Update README + minor fixes
1 parent a08736c commit b9fd4a3

File tree

3 files changed

+58
-12
lines changed

3 files changed

+58
-12
lines changed

README.md

Lines changed: 54 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
[![PyPI version](https://badge.fury.io/py/element-array-ephys.svg)](http://badge.fury.io/py/element-array-ephys)
2-
31
# DataJoint Element for Extracellular Electrophysiology
42

53
DataJoint Element for extracellular array electrophysiology that processes data
@@ -12,7 +10,8 @@ Kilosort](https://github.com/MouseLand/pykilosort) spike sorting software. DataJ
1210
Elements collectively standardize and automate data collection and analysis for
1311
neuroscience experiments. Each Element is a modular pipeline for data storage and
1412
processing with corresponding database tables that can be combined with other Elements
15-
to assemble a fully functional pipeline.
13+
to assemble a fully functional pipeline. This repository also provides a tutorial
14+
environment and notebooks to learn the pipeline.
1615

1716
## Experiment flowchart
1817

@@ -22,19 +21,66 @@ to assemble a fully functional pipeline.
2221

2322
![datajoint](https://raw.githubusercontent.com/datajoint/element-array-ephys/main/images/attached_array_ephys_element_acute.svg)
2423

24+
+ We have designed variations of the pipeline to handle different use cases. Displayed
25+
above is the `ephys_acute` schema for acute electrophysiology recordings. Details on
26+
all `ephys` schemas can be found in the documentation.
2527

2628
## Getting Started
2729

28-
+ Install from PyPI
30+
+ Please fork this repository.
31+
+ Clone the repository to your computer.
32+
```bash
33+
git clone https://github.com/<enter_github_username>/element-array-ephys.git
34+
```
35+
36+
+ Install with `pip`:
2937

3038
```bash
31-
pip install element-array-ephys
39+
pip install -e .
3240
```
33-
34-
+ [Interactive tutorial on GitHub Codespaces](https://github.com/datajoint/workflow-array-ephys#interactive-tutorial)
41+
+ [Interactive tutorial on GitHub
42+
Codespaces](https://github.com/datajoint/element-array-ephys#interactive-tutorial)
3543

3644
+ [Documentation](https://datajoint.com/docs/elements/element-array-ephys)
3745

3846
## Support
3947

40-
+ If you need help getting started or run into any errors, please contact our team by email at support@datajoint.com.
48+
+ If you need help getting started or run into any errors, please contact our team by
49+
email at support@datajoint.com.
50+
51+
## Interactive Tutorial
52+
53+
+ The easiest way to learn about DataJoint Elements is to use the tutorial notebooks within the included interactive environment configured using [Dev Container](https://containers.dev/).
54+
55+
### Launch Environment
56+
57+
Here are some options that provide a great experience:
58+
59+
- (*recommended*) Cloud-based Environment
60+
- Launch using [GitHub Codespaces](https://github.com/features/codespaces) using the `+` option which will `Create codespace on main` in the codebase repository on your fork with default options. For more control, see the `...` where you may create `New with options...`.
61+
- Build time for a codespace is a few minutes. This is done infrequently and cached for convenience.
62+
- Start time for a codespace is less than 1 minute. This will pull the built codespace from cache when you need it.
63+
- *Tip*: Each month, GitHub renews a [free-tier](https://docs.github.com/en/billing/managing-billing-for-github-codespaces/about-billing-for-github-codespaces#monthly-included-storage-and-core-hours-for-personal-accounts) quota of compute and storage. Typically we run into the storage limits before anything else since Codespaces consume storage while stopped. It is best to delete Codespaces when not actively in use and recreate when needed. We'll soon be creating prebuilds to avoid larger build times. Once any portion of your quota is reached, you will need to wait for it to be reset at the end of your cycle or add billing info to your GitHub account to handle overages.
64+
- *Tip*: GitHub auto names the codespace but you can rename the codespace so that it is easier to identify later.
65+
66+
- Local Environment
67+
> *Note: Access to example data is currently limited to MacOS and Linux due to the s3fs utility. Windows users are recommended to use the above environment.*
68+
- Install [Git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git)
69+
- Install [Docker](https://docs.docker.com/get-docker/)
70+
- Install [VSCode](https://code.visualstudio.com/)
71+
- Install the VSCode [Dev Containers extension](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-containers)
72+
- `git clone` the codebase repository and open it in VSCode
73+
- Use the `Dev Containers extension` to `Reopen in Container` (More info is in the `Getting started` included with the extension.)
74+
75+
You will know your environment has finished loading once you either see a terminal open related to `Running postStartCommand` with a final message of `Done` or the `README.md` is opened in `Preview`.
76+
77+
Once the environment has launched, please run the following command in the terminal:
78+
```
79+
MYSQL_VER=8.0 docker compose -f docker-compose-db.yaml up --build -d
80+
```
81+
82+
### Instructions
83+
84+
1. We recommend you start by navigating to the `notebooks` directory on the left panel and go through the `tutorial.ipynb` Jupyter notebook. Execute the cells in the notebook to begin your walk through of the tutorial.
85+
86+
1. Once you are done, see the options available to you in the menu in the bottom-left corner. For example, in Codespace you will have an option to `Stop Current Codespace` but when running Dev Container on your own machine the equivalent option is `Reopen folder locally`. By default, GitHub will also automatically stop the Codespace after 30 minutes of inactivity. Once the Codespace is no longer being used, we recommend deleting the Codespace.

element_array_ephys/ephys_chronic.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,10 @@
99
import pandas as pd
1010
from element_interface.utils import dict_to_uuid, find_full_path, find_root_directory
1111

12-
from . import ephys_report, get_logger, probe
12+
from . import ephys_report, probe
1313
from .readers import kilosort, openephys, spikeglx
1414

15-
log = get_logger(__name__)
15+
log = dj.logger
1616

1717
schema = dj.schema()
1818

element_array_ephys/ephys_no_curation.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,10 @@
1010
import pandas as pd
1111
from element_interface.utils import dict_to_uuid, find_full_path, find_root_directory
1212

13-
from . import ephys_report, get_logger, probe
13+
from . import ephys_report, probe
1414
from .readers import kilosort, openephys, spikeglx
1515

16-
log = get_logger(__name__)
16+
log = dj.logger
1717

1818
schema = dj.schema()
1919

0 commit comments

Comments
 (0)