@@ -23,6 +23,11 @@ A comprehensive Python toolkit for working with Open Ephys devices, featuring si
2323- ** Filtering** : Real-time and offline filters (Bandpass, Notch, Smoothing).
2424- ** Features** : Extract RMS, MAV, Zero Crossings, and IMU features.
2525
26+ ### 💾 Data & IO
27+ - ** Unified IO** : Robust support for Open Ephys Binary (` .oebin ` ) and ` .npz ` formats.
28+ - ** Dataset Builder** : Advanced tools to discover, group, and merge multi-session datasets.
29+ - ** Spatial Mapping** : Grid reorientation tools (` rot90 ` , ` flipH ` , etc.) for high-density arrays.
30+
2631## Installation
2732
2833### From Source
@@ -85,6 +90,19 @@ results = qc.compute_qc(data_chunk)
8590print(results) # Status (Good/Bad) per channel
8691` ` `
8792
93+ # ## 4. Unified CLI Tools
94+ Build a dataset from multiple sessions and train/predict with a single command workflow:
95+ ` ` ` bash
96+ # 1. Build Dataset (Auto-discovery, Preprocessing, Merging)
97+ python examples/gesture_classifier/1_build_dataset.py --root_dir ./data --multi_file --paper_style
98+
99+ # 2. Train Model
100+ python examples/gesture_classifier/2_train_model.py --root_dir ./data --label my_model
101+
102+ # 3. Predict (Offline or Real-time Stream)
103+ python examples/gesture_classifier/predict.py stream --root_dir ./data --label my_model
104+ ` ` `
105+
88106# # Examples
89107Check the ` examples/` directory for complete scripts:
90108- ` examples/gesture_classifier/2_train_model.py` : Train a gesture classifier.
@@ -95,3 +113,24 @@ Check the `examples/` directory for complete scripts:
95113
96114# # License
97115MIT License. See [LICENSE](LICENSE) for details.
116+
117+ # # Development & Release
118+
119+ # ## Versioning
120+ This project uses ** dynamic versioning** via ` setuptools_scm` . The version is automatically derived from Git tags.
121+
122+ # ## How to Release
123+ 1. ** Commit** all changes.
124+ 2. ** Tag** the commit with the new version number:
125+ ` ` ` bash
126+ git tag -a v0.1.0 -m " Release v0.1.0"
127+ ` ` `
128+ 3. ** Push** the tag to GitHub:
129+ ` ` ` bash
130+ git push origin v0.1.0
131+ ` ` `
132+ 4. ** Create a Release** on GitHub:
133+ - Go to ** Releases** > ** Draft a new release** .
134+ - Select the tag ` v0.1.0` .
135+ - Click ** Publish release** .
136+ 5. The ` publish.yml` workflow will trigger, build the package, and upload to PyPI.
0 commit comments