Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge release ver1.1.0 #623

Merged
merged 273 commits into from
Dec 21, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
273 commits
Select commit Hold shift + click to select a range
058e869
Merge pull request #79 from arayabrain/feature/upgrade_node_20
ReiHashimoto Oct 12, 2023
7c4f882
refactor, add global layout settings for nodes
ReiHashimoto Oct 13, 2023
d7294cf
add missing type definition of glob
ReiHashimoto Oct 13, 2023
35210c2
fix deprecated treeview import
ReiHashimoto Oct 13, 2023
ad4a7cf
display node id of algorithm nodes
ReiHashimoto Oct 13, 2023
a1f2dba
fix test case for reproduce
ReiHashimoto Oct 13, 2023
3839dca
add clear workflow action
ReiHashimoto Oct 16, 2023
05c28c5
add clear workflow button and improve buttons' UI
ReiHashimoto Oct 16, 2023
9f8a3be
declare nano id length as const
ReiHashimoto Oct 16, 2023
17b673d
show input nodes' id and improve layouts
ReiHashimoto Oct 16, 2023
22ca790
show full file name by tool tip
ReiHashimoto Oct 16, 2023
ade7757
Merge pull request #108 from arayabrain/feature/display-nodeid
ReiHashimoto Oct 16, 2023
d03a434
make default sort to desc
ReiHashimoto Oct 16, 2023
eab5507
show start, finish and elapsed time
ReiHashimoto Oct 16, 2023
12ac7eb
show function error message
ReiHashimoto Oct 16, 2023
7ecfc51
update createRoot usage
ReiHashimoto Oct 17, 2023
8615e96
fix key not defined on algo nodes
ReiHashimoto Oct 17, 2023
911e1bf
fix onClick event are set on Icon
ReiHashimoto Oct 17, 2023
d025a76
fix key not defined in paramItems
ReiHashimoto Oct 17, 2023
3d1f5a2
fix errors in visualize
ReiHashimoto Oct 17, 2023
cda7cab
fix key not defined in records
ReiHashimoto Oct 17, 2023
171dda0
fix reproduce schema, and make outputs available on reproduce
ReiHashimoto Oct 17, 2023
76a7f54
fix tests
ReiHashimoto Oct 17, 2023
0e38094
Merge branch 'develop-main', remote-tracking branch 'origin' into fea…
ReiHashimoto Oct 19, 2023
3a8e79c
improve dialog action button ui
ReiHashimoto Oct 19, 2023
eed02ac
modify timestamp format
ReiHashimoto Oct 19, 2023
f02cd0f
Merge pull request #110 from arayabrain/feature/improve-records-view
ReiHashimoto Oct 19, 2023
2a2793a
Merge pull request #112 from arayabrain/feature/reproduce-outputs
ReiHashimoto Oct 19, 2023
dc97b10
Merge branch 'develop-main' into feature/clear-workflow-button
ReiHashimoto Oct 19, 2023
163edc7
remove unused import
ReiHashimoto Oct 19, 2023
76d7c3d
Merge pull request #109 from arayabrain/feature/clear-workflow-button
ReiHashimoto Oct 19, 2023
7a43bca
add eslint and prettier
ReiHashimoto Oct 19, 2023
1359783
run prettier format
ReiHashimoto Oct 19, 2023
c124e35
run eslint fix
ReiHashimoto Oct 19, 2023
36d8646
fix progress event type annotation
ReiHashimoto Oct 19, 2023
8ff46f0
fix qs.stringify import
ReiHashimoto Oct 19, 2023
20d88f0
fix syntax errors
ReiHashimoto Oct 19, 2023
4659076
fix eslint erros
ReiHashimoto Oct 20, 2023
73db8fa
fix eslint and prettier conflicts
ReiHashimoto Oct 20, 2023
726e3e0
add husky
ReiHashimoto Oct 20, 2023
8d83e20
skip installing prepare on docker contaner
ReiHashimoto Oct 20, 2023
a9e81c4
fix async actions
ReiHashimoto Oct 23, 2023
1841b0f
fix hdf5 reducer
ReiHashimoto Oct 23, 2023
c1eb749
Merge pull request #114 from arayabrain/feature/add-fe-linter-formatter
ReiHashimoto Oct 23, 2023
150801a
only active sort icon is visible
ReiHashimoto Oct 24, 2023
646f0d9
Merge pull request #119 from arayabrain/feature/improve-records-header
ReiHashimoto Oct 24, 2023
fc91601
highlight nodes that will be run
ReiHashimoto Oct 24, 2023
3ed1960
added node after run isUpdated true
ReiHashimoto Oct 24, 2023
22a0096
rename dialog context
ReiHashimoto Oct 25, 2023
0f4f06c
refactor, move flow dialog components
ReiHashimoto Oct 25, 2023
85c73c2
add confirmation on input file change
ReiHashimoto Oct 25, 2023
2b0e37d
refactor, move right drawer components
ReiHashimoto Oct 25, 2023
929c592
add confirmation on nwb, snakemake params change
ReiHashimoto Oct 25, 2023
12ef194
Merge pull request #120 from arayabrain/feature/improve-run
ReiHashimoto Oct 26, 2023
31194dc
add workspace info to left menu
ReiHashimoto Oct 26, 2023
8e63a6c
add confirm before reproduce
ReiHashimoto Oct 26, 2023
e9e119e
switch to workflow tab after reproduce
ReiHashimoto Oct 26, 2023
231f7f1
improve dialog message
ReiHashimoto Oct 26, 2023
1e6448b
improve right drawer layout
ReiHashimoto Oct 26, 2023
7a54576
Merge pull request #124 from arayabrain/feature/improve-reproduce
ReiHashimoto Oct 26, 2023
90ab8d9
Merge pull request #123 from arayabrain/feature/show-workspace-info
ReiHashimoto Oct 26, 2023
490a245
update .env template
Oct 26, 2023
d409360
for-server 215, restrict access client for port forwarding
ReiHashimoto Oct 26, 2023
0b3a8f4
make fe protocol setting available
ReiHashimoto Oct 26, 2023
79b3be7
Merge pull request #125 from arayabrain/feature/improve-dotenv-template
ReiHashimoto Oct 26, 2023
805dcfd
unique mmapfile name
ReiHashimoto Oct 27, 2023
2750850
prevent duplicate run request
ReiHashimoto Oct 27, 2023
9695fde
fix RoiResponseSeries data's shape
ReiHashimoto Oct 27, 2023
a830458
replace setuptools to poetry
quanpython Nov 3, 2023
22b9af6
update poetry lock
quanpython Nov 6, 2023
0367ebd
add key map and fix warning
sanglevinh Nov 6, 2023
ec8d99d
GCaMaP -> GCaMP
milesOIST Nov 6, 2023
4ff28ca
move memmap files to output dir
ReiHashimoto Nov 6, 2023
77141ad
Merge pull request #127 from arayabrain/feature/fix-multiple-run
ReiHashimoto Nov 6, 2023
9a217a3
Merge pull request #134 from arayabrain/feature/rename_nwb_yaml
ReiHashimoto Nov 6, 2023
b0f035e
Merge branch 'develop-main' into feature/fix_browser_warning
sanglevinh Nov 6, 2023
583a909
add key component
sanglevinh Nov 6, 2023
908d260
poetry add `--no-root` options
quanpython Nov 6, 2023
a14de3e
Test: check spell checker
milesOIST Nov 7, 2023
44ccc1e
Add new pre-commit funcion codespell
milesOIST Nov 7, 2023
dc1a227
Spell check on current files
milesOIST Nov 7, 2023
5fdf584
Adjusted spacing
milesOIST Nov 7, 2023
acc1146
Added exclusions to toml file
milesOIST Nov 7, 2023
052f659
Added exclusions to toml file
milesOIST Nov 7, 2023
ce4116a
update internal links
ReiHashimoto Nov 7, 2023
a35af04
remove unused files
ReiHashimoto Nov 7, 2023
9a668f1
update recommended extensions
ReiHashimoto Nov 7, 2023
d6f967c
remove unused comment outs
ReiHashimoto Nov 7, 2023
b8468ef
fix broken nodejs link
ReiHashimoto Nov 7, 2023
45ae624
improve caution message
ReiHashimoto Nov 7, 2023
83cfa63
update docs for developers
ReiHashimoto Nov 8, 2023
7d952be
Fixes to precommit yaml and toml files
milesOIST Nov 8, 2023
813087a
Fixes to precommit yaml and toml files
milesOIST Nov 8, 2023
017a2a2
Fixes to precommit yaml and toml files
milesOIST Nov 8, 2023
aba0af2
Fixes to precommit yaml and toml files
milesOIST Nov 8, 2023
5e04e1a
Fixes to precommit yaml and toml files
milesOIST Nov 8, 2023
456cc7c
Added copy function to readthedocs
milesOIST Nov 8, 2023
67382ae
Merge pull request #143 from arayabrain/feature/readthedocs_copy
ReiHashimoto Nov 8, 2023
35c13dd
remove sphinx-pyproject
ReiHashimoto Nov 8, 2023
9f8d733
update sphinx_rtd_theme
ReiHashimoto Nov 8, 2023
29924cd
Merge pull request #137 from arayabrain/feature/precommit_codespell
ReiHashimoto Nov 9, 2023
e3f3e4f
Merge branch 'develop-main' into feature/add-poetry
ReiHashimoto Nov 9, 2023
e1c4146
add codespell github actions
ReiHashimoto Nov 9, 2023
387d04f
Merge pull request #145 from arayabrain/feature/codespell-workflow
ReiHashimoto Nov 9, 2023
a0ac578
improve node paramater
sanglevinh Nov 9, 2023
a59c36a
Merge pull request #132 from arayabrain/feature/add-poetry
ReiHashimoto Nov 10, 2023
47b5210
Merge pull request #133 from arayabrain/feature/fix_browser_warning
ReiHashimoto Nov 10, 2023
dd8b8f6
update codespell dependency
ReiHashimoto Nov 10, 2023
85b3e97
update pymysql
ReiHashimoto Nov 10, 2023
13dff24
update numpy
ReiHashimoto Nov 10, 2023
b1cb1bc
update fastapi, uvicorn
ReiHashimoto Nov 10, 2023
5ee9fc5
update plotly-python
ReiHashimoto Nov 10, 2023
cee239f
Merge pull request #149 from arayabrain/feature/update-python-packages
ReiHashimoto Nov 10, 2023
d1a9adb
update axios
ReiHashimoto Nov 10, 2023
326788c
Merge pull request #150 from arayabrain/feature/update-axios
ReiHashimoto Nov 10, 2023
aac8ced
update outdated packages
ReiHashimoto Nov 10, 2023
11e2838
fix errors
ReiHashimoto Nov 10, 2023
35ceb65
Merge pull request #151 from arayabrain/feature/update-outdated-packages
ReiHashimoto Nov 10, 2023
3cfeaff
update release related files
ReiHashimoto Nov 10, 2023
aed7655
Merge remote-tracking branch 'origin/develop-main' into feature/updat…
ReiHashimoto Nov 13, 2023
6f2697a
add API check is standalone mode
quanpython Nov 14, 2023
2d0f251
use pip show
ReiHashimoto Nov 14, 2023
ee76e4a
Merge pull request #152 from arayabrain/feature/update-release-commands
ReiHashimoto Nov 14, 2023
b7897db
Merge remote-tracking branch 'origin/develop-main' into feature/updat…
ReiHashimoto Nov 15, 2023
e6f1bdc
add pr link
ReiHashimoto Nov 15, 2023
07fcd38
update architecture contents
ReiHashimoto Nov 15, 2023
acc8286
integrate api mode standalone
sanglevinh Nov 16, 2023
33dfe56
Merge branch 'develop-main' into feature/mode_standalone
sanglevinh Nov 16, 2023
ce4b9c3
Merge branch 'feature/check-is-standalone-api' into feature/mode_stan…
sanglevinh Nov 16, 2023
fd70da7
improve docker setting
Nov 16, 2023
0ff83ff
integrate api get type stand mode
sanglevinh Nov 17, 2023
04f38b3
fix warning and remove console.log
sanglevinh Nov 20, 2023
0c18005
New import sample data button
milesOIST Nov 20, 2023
25554c6
Merge pull request #141 from arayabrain/feature/update-developer-guid…
ReiHashimoto Nov 20, 2023
b67b9f4
Merge branch 'develop-main' into feature/mode_standalone
sanglevinh Nov 20, 2023
397705d
New import sample data button
milesOIST Nov 20, 2023
dc0630b
import sample data bug fix and suggested fixes
milesOIST Nov 21, 2023
95e6774
Merge pull request #146 from arayabrain/feature/improve_node_parameter
ReiHashimoto Nov 21, 2023
2ef367f
Merge pull request #160 from arayabrain/feature/improve-docker-setting
ReiHashimoto Nov 21, 2023
b44bea0
Merge pull request #128 from arayabrain/feature/fix-nwb
ReiHashimoto Nov 21, 2023
0be4940
add loading when await api mode
sanglevinh Nov 21, 2023
8e6c144
update env.example
sanglevinh Nov 21, 2023
9e3f32b
cloes popup when esc and click outside
sanglevinh Nov 22, 2023
4f42e4a
retry call api when mode undefined
sanglevinh Nov 22, 2023
6b61fba
remove func close popup esc
sanglevinh Nov 22, 2023
61c1ee8
retry get mode until success
ReiHashimoto Nov 22, 2023
348f0ae
fix ui popup add, edit account
sanglevinh Nov 22, 2023
6818398
fix button action popup select file
sanglevinh Nov 22, 2023
3256abe
fix button delete record and run all workflow
sanglevinh Nov 22, 2023
d123970
change modal to dialog and fix UI
sanglevinh Nov 24, 2023
486f52b
import sample data imports 2 workflows and reloads automatically afte…
milesOIST Nov 27, 2023
5f8b779
remove large file check on pre-commit
ReiHashimoto Nov 27, 2023
8d5db07
Merge pull request #195 from arayabrain/feature/remove-largefile-check
ReiHashimoto Nov 27, 2023
d38317f
replace to constant backoff
ReiHashimoto Nov 27, 2023
4283a8d
Remove logging
milesOIST Nov 27, 2023
2613d4d
remove retry call api in getModeStandaloneApi
sanglevinh Nov 27, 2023
9e4ed8f
Merge pull request #191 from arayabrain/feature/mode_standalone_retry
ReiHashimoto Nov 27, 2023
4a28fc2
update clear workflow icon and messages
ReiHashimoto Nov 28, 2023
eb33b91
arrange toolbuttons
ReiHashimoto Nov 28, 2023
1b025e9
fix action button label
ReiHashimoto Nov 28, 2023
1fac501
Merge pull request #205 from arayabrain/feature/clear-wf-icon
ReiHashimoto Nov 28, 2023
0d809d9
ignore serializable check for expected api error
ReiHashimoto Nov 28, 2023
f5d613d
update tags, log
quanpython Nov 28, 2023
7f1e2bc
Merge branch 'feature/check-is-standalone-api' into feature/mode_stan…
quanpython Nov 28, 2023
0810c18
Merge pull request #159 from arayabrain/feature/mode_standalone
ReiHashimoto Nov 28, 2023
6eea93b
Bump cryptography from 41.0.5 to 41.0.6
dependabot[bot] Nov 29, 2023
911c9d5
Change of input parameter names for clarity
milesOIST Nov 29, 2023
4a6be97
remove unused import and fix button delete
sanglevinh Nov 29, 2023
b3a674a
Merge pull request #189 from arayabrain/feature/update_dialog_ui
ReiHashimoto Nov 29, 2023
65eebd1
improve workflow param form layout
ReiHashimoto Nov 28, 2023
0b74f75
control visualize item editor margin at the top
ReiHashimoto Nov 28, 2023
31a564c
update template components
ReiHashimoto Nov 29, 2023
64fd0c9
improve visualize window sidebar layouts
ReiHashimoto Nov 29, 2023
24a8a8c
fix missing changes
ReiHashimoto Nov 29, 2023
47e6cb1
ETA now accepts triggers of different lengths
milesOIST Nov 29, 2023
2ed4adb
remove plot with close icon
ReiHashimoto Nov 29, 2023
50b8756
button to add plot to next column
ReiHashimoto Nov 29, 2023
49f5901
remove unused file
ReiHashimoto Nov 29, 2023
7090d7c
fix code format
ReiHashimoto Nov 30, 2023
92cfff4
fix tooltips layout
ReiHashimoto Nov 30, 2023
cb64567
improve copy_sample_data logic
ReiHashimoto Nov 30, 2023
c80cea7
Merge remote-tracking branch 'origin/develop-main' into feature/addSa…
ReiHashimoto Nov 30, 2023
e3f89bf
support docker usecase
ReiHashimoto Nov 30, 2023
39d721e
Merge pull request #210 from arayabrain/feature/add-plot-button
ReiHashimoto Nov 30, 2023
b37963b
use common styled dialog ui
ReiHashimoto Nov 30, 2023
c4d603e
remove selected file label
ReiHashimoto Nov 30, 2023
8c2c82d
Merge branch 'develop-main' into feature/update-param-ui
ReiHashimoto Nov 30, 2023
a979362
fix plot's id layout
ReiHashimoto Nov 30, 2023
66bc61e
add divider to visualize item select
ReiHashimoto Nov 30, 2023
aaac640
add file name chip
ReiHashimoto Dec 1, 2023
b6f8827
Merge pull request #209 from arayabrain/feature/update-param-ui
ReiHashimoto Dec 1, 2023
8660223
Merge pull request #208 from arayabrain/dependabot/pip/cryptography-4…
dependabot[bot] Dec 1, 2023
1b26ce0
Bump @adobe/css-tools from 4.3.1 to 4.3.2 in /frontend
dependabot[bot] Dec 1, 2023
18af23c
Bump fastapi-pagination from 0.12.5 to 0.12.13
dependabot[bot] Dec 1, 2023
5cec8cc
Bump sphinx-autodoc-typehints from 1.25.0 to 1.25.2
dependabot[bot] Dec 1, 2023
190de80
Merge pull request #212 from arayabrain/dependabot/npm_and_yarn/front…
dependabot[bot] Dec 1, 2023
e85944c
Merge pull request #156 from arayabrain/dependabot/pip/sphinx-autodoc…
dependabot[bot] Dec 1, 2023
799776f
add babel core deps
ReiHashimoto Dec 1, 2023
3055f88
Merge pull request #213 from arayabrain/feature/add-babel-core
ReiHashimoto Dec 1, 2023
432597b
Merge pull request #204 from arayabrain/dependabot/pip/fastapi-pagina…
dependabot[bot] Dec 1, 2023
87db258
Bump sqlmodel from 0.0.8 to 0.0.12
dependabot[bot] Dec 1, 2023
1fe0601
ignore all serializable check
ReiHashimoto Dec 1, 2023
f66c2dd
Merge pull request #206 from arayabrain/feature/suppress-404-console
ReiHashimoto Dec 1, 2023
06266c1
fix create workflow dialog
ReiHashimoto Dec 1, 2023
2b2e354
Merge pull request #211 from arayabrain/feature/common-dialog
ReiHashimoto Dec 1, 2023
53ff150
use menu for documentation
ReiHashimoto Dec 1, 2023
105cb31
Merge remote-tracking branch 'origin' into feature/addSampleData
ReiHashimoto Dec 1, 2023
88058ed
add nodeId copy button
ReiHashimoto Dec 1, 2023
eb85fe0
add confirmation dialog
ReiHashimoto Dec 1, 2023
4ff3ef3
use tooltip
ReiHashimoto Dec 1, 2023
67ec69c
Merge pull request #214 from arayabrain/feature/copy-node-id
ReiHashimoto Dec 1, 2023
777df16
Merge pull request #184 from arayabrain/dependabot/pip/sqlmodel-0.0.12
dependabot[bot] Dec 1, 2023
f4c7fe6
put sample data for dev back
ReiHashimoto Dec 4, 2023
e4848f1
Merge pull request #182 from arayabrain/feature/addSampleData
ReiHashimoto Dec 4, 2023
a7f9ab5
change rect select
sanglevinh Dec 4, 2023
674d7b4
change stroke style
ReiHashimoto Dec 5, 2023
40ae189
Merge pull request #219 from arayabrain/feature/fix_drag_select
ReiHashimoto Dec 5, 2023
c6510b4
Change of input parameter names for clarity
milesOIST Nov 29, 2023
5c9882b
ETA now accepts triggers of different lengths
milesOIST Nov 29, 2023
13725e5
ETA plot correct index and rename Offset
milesOIST Dec 5, 2023
1f48081
ETA plot correct index and rename Offset
milesOIST Dec 5, 2023
d40f77f
rename to vertical offset
milesOIST Dec 5, 2023
9ce5779
update gui guide for workflow
ReiHashimoto Dec 5, 2023
faeefff
update gui guide for visualize
ReiHashimoto Dec 5, 2023
d080426
update gui guide for records
ReiHashimoto Dec 5, 2023
ed336e2
update setup guide for multiuser mode
ReiHashimoto Dec 5, 2023
1c44126
add description for node id
ReiHashimoto Dec 5, 2023
edba731
improve image path, alt, some description
ReiHashimoto Dec 5, 2023
5b17711
fix typo
ReiHashimoto Dec 5, 2023
0511f4c
fix for review comments
ReiHashimoto Dec 5, 2023
12ae917
fix nwbfile data inheritance
ReiHashimoto Dec 6, 2023
86a47c6
Merge pull request #226 from arayabrain/feature/fix-nwbfile
ReiHashimoto Dec 7, 2023
4d8a63b
specify black version for github actions
ReiHashimoto Dec 12, 2023
a46a2a6
Merge pull request #241 from arayabrain/feature/specify-black
ReiHashimoto Dec 12, 2023
438c582
fix suite2p_spike_deconv
ReiHashimoto Dec 13, 2023
4deb550
output movie can be loaded with index
ReiHashimoto Dec 13, 2023
e8ed81a
Merge pull request #243 from arayabrain/feature/image-index
ReiHashimoto Dec 15, 2023
e593be7
reverse std bool condition and fix initial values
ReiHashimoto Dec 19, 2023
ccc2c31
Merge pull request #224 from arayabrain/feature/fix-eta
ReiHashimoto Dec 19, 2023
a2d61d8
new tutorial
ReiHashimoto Dec 19, 2023
70c8d1f
Merge branch 'develop-main' into feature/update-docs
ReiHashimoto Dec 19, 2023
8495d8f
fix sample workflow params
ReiHashimoto Dec 19, 2023
0454fb9
fix file links and remove unused files
ReiHashimoto Dec 19, 2023
dfdc9c7
Merge pull request #223 from arayabrain/feature/update-docs
ReiHashimoto Dec 19, 2023
9d48e17
Merge pull request #619 from arayabrain/develop-main
ReiHashimoto Dec 19, 2023
32d7eb4
fix errors found on release test
ReiHashimoto Dec 20, 2023
677f08d
Merge pull request #249 from arayabrain/hotfix/fix-errors
ReiHashimoto Dec 20, 2023
12d023c
Merge pull request #620 from arayabrain/develop-main
ReiHashimoto Dec 20, 2023
f14d0e9
build for release 1.1.0
ReiHashimoto Dec 21, 2023
f5544e0
Merge pull request #622 from oist/release/1.1.0
ReiHashimoto Dec 21, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
5 changes: 5 additions & 0 deletions .codespellignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
createR
afterAll
xdescribe
optinist
Optinist
10 changes: 10 additions & 0 deletions .github/workflows/codespell.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
name: Codespell
on:
pull_request:

jobs:
codespell:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: codespell-project/actions-codespell@v2
2 changes: 2 additions & 0 deletions .github/workflows/linters.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,3 +37,5 @@ jobs:
steps:
- uses: actions/checkout@v4
- uses: psf/black@stable
with:
version: "~= 23.11"
12 changes: 7 additions & 5 deletions .github/workflows/test.yml → .github/workflows/tests.yml
Original file line number Diff line number Diff line change
@@ -1,10 +1,12 @@
name: CI
name: Tests

on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
branches:
- main
- develop-main
paths-ignore:
- 'docs/**'

workflow_dispatch:

Expand All @@ -17,7 +19,7 @@ jobs:
steps:
- uses: actions/checkout@v4

- name: Run a one-line script
- name: Run test_run command
shell: bash
run: |
make test_run
8 changes: 6 additions & 2 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,6 @@ repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.4.0
hooks:
- id: check-added-large-files
exclude: frontend/build
- id: check-toml
- id: check-yaml
args:
Expand All @@ -26,3 +24,9 @@ repos:
rev: 6.1.0
hooks:
- id: flake8
- repo: https://github.com/codespell-project/codespell
rev: v2.2.4
hooks:
- id: codespell
additional_dependencies:
- tomli
2 changes: 1 addition & 1 deletion .readthedocs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,4 +11,4 @@ sphinx:
configuration: docs/conf.py
python:
install:
- requirements: docs/requirements.txt
- requirements: docs/requirements.txt
4 changes: 3 additions & 1 deletion .vscode/extensions.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
"recommendations": [
"ms-python.black-formatter",
"ms-python.flake8",
"ms-python.isort"
"ms-python.isort",
"dbaeumer.vscode-eslint",
"esbenp.prettier-vscode"
]
}
1 change: 1 addition & 0 deletions .vscode/settings.example.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
"source.organizeImports": true
}
},
"eslint.workingDirectories": ["frontend"],
"flake8.args": ["--config=.flake8"],
// NOTE: Uncomment following line and fix "optinist_dev" to your conda env name
// "flake8.path": ["conda", "run", "-n", "optinist_dev", "python", "-m", "flake8"],
Expand Down
21 changes: 9 additions & 12 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ build_frontend:
.PHONY: docs
docs:
rm -rf docs/_build/
# pip install -e '.[doc]'
poetry install --with doc --no-root
# sphinx-apidoc -f -o ./docs/_build/modules ./studio
sphinx-autobuild -b html docs docs/_build --port 8001

Expand All @@ -42,24 +42,21 @@ dockerhub:

.PHONY: local_build
local_build:
cd frontend
yarn install && yarn build
cd ../
pip install .
cd frontend && yarn install --ignore-scripts && yarn build
poetry build

.PHONY: upload_testpypi
upload_testpypi:
python -m build
twine upload --repository testpypi dist/*
poetry publish -r testpypi

.PHONY: test_pypi
test_pypi:
python3 -m pip install --index-url https://test.pypi.org/simple/ studio
.PHONY: install_testpypi
install_testpypi:
pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple/ optinist
pip show optinist

.PHONY: push_pypi
push_pypi:
twine upload --repository pypi dist/*

poetry publish

.PHONY: format
format:
Expand Down
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ OptiNiSt also supports reproducibility of scientific research, standardization o

### Postprocessing
- [x] Basic Neural Analysis(Event Trigger Average...)
- [x] Dimenstion Reduction(PCA...)
- [x] Dimension Reduction(PCA...)
- [x] Neural Decoding(LDA...)
- [x] Neural Population Analysis(Correlation...)

Expand Down Expand Up @@ -85,7 +85,7 @@ https://optinist.readthedocs.io/en/latest/

## Using GUI
### Workflow
- OptiNiSt allows you to make your analysis pipelines by graph style using nodes and edges on GUI. Parameters for each analysis are easily changeable.
- OptiNiSt allows you to make your analysis pipelines by graph style using nodes and edges on GUI. Parameters for each analysis are easily changeable.
<p align="center">
<img width="400px" src="docs/_static/workflow/whole.png" alt="workflow" />
</p>
Expand All @@ -99,7 +99,7 @@ https://optinist.readthedocs.io/en/latest/
</p>

### Record
- OptiNiSt supports you in recording and reproducing workflow pipelines in an organized manner.
- OptiNiSt supports you in recording and reproducing workflow pipelines in an organized manner.
<p align="center">
<img width="400px" src="docs/_static/record/whole.png" alt="record" />
</p>
Expand All @@ -118,8 +118,8 @@ Kenji Doya, Yukako Yamane [OIST Neural Computation Unit](https://groups.oist.jp/


## References
[[Suite2p]](https://github.com/MouseLand/suite2p) Marius Pachitariu, Carsen Stringer, Mario Dipoppa, Sylvia Schröder, L. Federico Rossi, Henry Dalgleish, Matteo Carandini, Kenneth D. Harris. "Suite2p: beyond 10,000 neurons with standard two-photon microscopy". 2017
[[CaImAn]](https://github.com/flatironinstitute/CaImAn) Andrea Giovannucci Is a corresponding author, Johannes Friedrich, Pat Gunn, Jérémie Kalfon, Brandon L Brown, Sue Ann Koay, Jiannis Taxidis, Farzaneh Najafi, Jeffrey L Gauthier, Pengcheng Zhou, Baljit S Khakh, David W Tank, Dmitri B Chklovskii, Eftychios A Pnevmatikakis. "CaImAn: An open source tool for scalable Calcium Imaging data Analysis". 2019
[[Suite2p]](https://github.com/MouseLand/suite2p) Marius Pachitariu, Carsen Stringer, Mario Dipoppa, Sylvia Schröder, L. Federico Rossi, Henry Dalgleish, Matteo Carandini, Kenneth D. Harris. "Suite2p: beyond 10,000 neurons with standard two-photon microscopy". 2017
[[CaImAn]](https://github.com/flatironinstitute/CaImAn) Andrea Giovannucci Is a corresponding author, Johannes Friedrich, Pat Gunn, Jérémie Kalfon, Brandon L Brown, Sue Ann Koay, Jiannis Taxidis, Farzaneh Najafi, Jeffrey L Gauthier, Pengcheng Zhou, Baljit S Khakh, David W Tank, Dmitri B Chklovskii, Eftychios A Pnevmatikakis. "CaImAn: An open source tool for scalable Calcium Imaging data Analysis". 2019
[[LCCD]](https://github.com/magnetizedCell/lccd-python) Tsubasa Ito, Keisuke Ota, Kanako Ueno, Yasuhiro Oisi, Chie Matsubara, Kenta Kobayashi, Masamichi Ohkura, Junichi Nakai, Masanori Murayama, Toru Aonishi, "Low computational-cost cell detection method for calcium imaging data", 2022
[[PyNWB]](https://github.com/NeurodataWithoutBorders/pynwb) Oliver Rübel, Andrew Tritt, Ryan Ly, Benjamin K. Dichter, Satrajit Ghosh, Lawrence Niu, Ivan Soltesz, Karel Svoboda, Loren Frank, Kristofer E. Bouchard, "The Neurodata Without Borders ecosystem for neurophysiological data science", bioRxiv 2021.03.13.435173, March 15, 2021

Expand Down
10 changes: 6 additions & 4 deletions docker-compose.dev.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,20 +8,22 @@ services:
working_dir: /app
volumes:
- .:/app
- ../optinist-docker-volumes/studio_data/:/app/studio_data
ports:
- "8000:8000"
command: python main.py --reload --host 0.0.0.0 --port 8000
- "127.0.0.1:8000:8000"
command: poetry run python main.py --reload --host 0.0.0.0 --port 8000
environment:
PYTHONPATH: /app/
TZ: Asia/Tokyo
OPTINIST_DIR: /app/studio_data

studio-dev-fe:
image: node:16.20.1-alpine
image: node:20.8.0-alpine3.18
working_dir: /app/frontend
volumes:
- ./frontend/:/app/frontend/
ports:
- "3000:3000"
- "127.0.0.1:3000:3000"
command: ash -c 'yarn install && yarn start'
environment:
TZ: Asia/Tokyo
6 changes: 2 additions & 4 deletions docker-compose.test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,9 @@ services:
environment:
PYTHONPATH: .
TZ: Asia/Tokyo
command: bash -c "poetry install --no-root --with test && poetry run python3 -m pytest -s ."
volumes:
- ./studio:/app/studio
- ./conda/yaml:/app/conda/yaml
- ./studio/test_data:/tmp/studio
- ./frontend/build:/app/frontend/build
- .:/app

test_studio_frontend:
image: test_studio_frontend
Expand Down
4 changes: 2 additions & 2 deletions docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@ services:
- ../optinist-docker-volumes/logs/:/app/logs
- ../optinist-docker-volumes/studio_data/:/app/studio_data
ports:
- "8000:8000"
command: python main.py --host 0.0.0.0 --port 8000
- "127.0.0.1:8000:8000"
command: poetry run python main.py --host 0.0.0.0 --port 8000
environment:
PYTHONPATH: /app/
TZ: Asia/Tokyo
Expand Down
Binary file removed docs/_static/record/components/table.png
Binary file not shown.
Binary file added docs/_static/record/error_message.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/_static/record/table.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/_static/record/whole.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/_static/tutorials/ETA.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/_static/tutorials/PCA.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/_static/tutorials/add_modules.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed docs/_static/tutorials/caiman_sample_pipeline.png
Binary file not shown.
Binary file added docs/_static/tutorials/check_csv.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/_static/tutorials/delete_ROI.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed docs/_static/tutorials/download_workflow_config.png
Binary file not shown.
Binary file removed docs/_static/tutorials/fig10.1_buttons.png
Binary file not shown.
Binary file removed docs/_static/tutorials/fig10_parameters.png
Binary file not shown.
Binary file removed docs/_static/tutorials/fig11_runall.png
Binary file not shown.
Binary file removed docs/_static/tutorials/fig12.00_hdfnode.png
Binary file not shown.
Binary file removed docs/_static/tutorials/fig12.01_hdfnode2.png
Binary file not shown.
Binary file removed docs/_static/tutorials/fig12.02_hdfs2p.png
Binary file not shown.
Binary file removed docs/_static/tutorials/fig12.03_hdfcaiman.png
Binary file not shown.
Binary file removed docs/_static/tutorials/fig12.04_behaviornode.png
Binary file not shown.
Binary file removed docs/_static/tutorials/fig12.05_behaviornode2.png
Binary file not shown.
Binary file removed docs/_static/tutorials/fig12.06_etaworkflow.png
Binary file not shown.
Binary file removed docs/_static/tutorials/fig12.07_etamean.png
Binary file not shown.
Binary file removed docs/_static/tutorials/fig12.08_resulthdf.png
Diff not rendered.
Binary file removed docs/_static/tutorials/fig13_nwbsnakemake.png
Diff not rendered.
Binary file removed docs/_static/tutorials/fig1_console.png
Diff not rendered.
Binary file removed docs/_static/tutorials/fig20_initialize.png
Diff not rendered.
Binary file removed docs/_static/tutorials/fig21_loadmovie.png
Diff not rendered.
Binary file removed docs/_static/tutorials/fig22_movie.png
Diff not rendered.
Binary file removed docs/_static/tutorials/fig2_open.png
Diff not rendered.
Binary file removed docs/_static/tutorials/fig30_saving.png
Diff not rendered.
Binary file removed docs/_static/tutorials/fig40_recordall.png
Diff not rendered.
Binary file removed docs/_static/tutorials/fig4_algorithms.png
Diff not rendered.
Binary file removed docs/_static/tutorials/fig5_imagenode2.png
Diff not rendered.
Binary file removed docs/_static/tutorials/fig6_suite2p.png
Diff not rendered.
Binary file removed docs/_static/tutorials/fig7_suite2p2.png
Diff not rendered.
Binary file removed docs/_static/tutorials/fig8_suite2pcaiman.png
Diff not rendered.
Binary file removed docs/_static/tutorials/fig9_workflowbranch.png
Diff not rendered.
Binary file removed docs/_static/tutorials/import_workflow.png
Diff not rendered.
Binary file removed docs/_static/tutorials/lccd_sample_pipeline.png
Diff not rendered.
Binary file added docs/_static/tutorials/load_sample_data.png
Binary file added docs/_static/tutorials/play_vid.png
Binary file removed docs/_static/tutorials/sample_pipelines.png
Diff not rendered.
Binary file added docs/_static/tutorials/show_fluorescence.png
Binary file removed docs/_static/tutorials/suite2p_sample_pipeline.png
Diff not rendered.
Binary file added docs/_static/visualize/add_column.png
Binary file removed docs/_static/visualize/components/add_column.png
Diff not rendered.
Diff not rendered.
Diff not rendered.
Diff not rendered.
Binary file added docs/_static/visualize/customize_param.png
Binary file modified docs/_static/visualize/imaging_rate.png
Binary file added docs/_static/visualize/movie_index.png
File renamed without changes
Binary file added docs/_static/visualize/save_fig.png
Binary file added docs/_static/visualize/select_output_item.png
Binary file added docs/_static/visualize/set_display_box.png
Binary file modified docs/_static/visualize/whole.png
Binary file added docs/_static/workflow/add_algorithm.png
Binary file added docs/_static/workflow/algorithm_node_buttons.png
Binary file added docs/_static/workflow/algorithm_output.png
Binary file added docs/_static/workflow/algorithm_param_form.png
Binary file removed docs/_static/workflow/components/add_algorithm.png
Diff not rendered.
Binary file removed docs/_static/workflow/components/connect_edge.png
Diff not rendered.
Binary file removed docs/_static/workflow/components/imageList.png
Diff not rendered.
Binary file removed docs/_static/workflow/components/imageNode.png
Diff not rendered.
Binary file added docs/_static/workflow/connect_edge.png
Binary file added docs/_static/workflow/create_new_workflow.png
Binary file added docs/_static/workflow/imageList.png
Binary file added docs/_static/workflow/import_workflow.png
Binary file added docs/_static/workflow/nwb_settings.png
Binary file added docs/_static/workflow/run_after.png
Binary file added docs/_static/workflow/run_before.png
Binary file added docs/_static/workflow/run_buttons.png
Binary file added docs/_static/workflow/snakemake_settings.png
Binary file modified docs/_static/workflow/whole.png
6 changes: 2 additions & 4 deletions docs/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,6 @@
import os
from datetime import datetime

from sphinx_pyproject import SphinxConfig

# -- Path setup --------------------------------------------------------------

# If extensions (or modules to document with autodoc) are in another directory,
Expand All @@ -18,11 +16,10 @@


# -- Project information -----------------------------------------------------
config = SphinxConfig("../pyproject.toml", globalns=globals())
project = "OptiNiSt"
copyright = f"{datetime.today().year}, OIST"
author = ""
release = ".".join(config.version.split(".")[:2])
release = "1.1.0"

# -- readthedocs -------------------------------------------------------------
on_rtd = os.environ.get("READTHEDOCS", None) == "True"
Expand All @@ -46,6 +43,7 @@
"sphinx.ext.autosummary",
"sphinx.ext.extlinks",
"sphinx.ext.autodoc.typehints",
"sphinx_copybutton",
]

# Tell myst-parser to assign header anchors for h1-h3.
Expand Down
61 changes: 61 additions & 0 deletions docs/for_developers/architecture.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
## Architecture
### Frontend
- language: TypeScript
- environment: Node.js (v20)
- framework: React (v18)
- middleware: Redux, Redux Toolkit, React Router

#### Directory structure
Following is the summary of directory structure.

- frontend
- src
- api: handle API requests.
- components: React components.
- const: constants.
- pages: Components set as `element` in `Route` component of react-router.
- store: Redux store.
- slice
- Some
- SomeActions.ts: create actions like async thunk from api response.
- SomeSelectors.ts: select state from store.
- SomeSlice.ts: define reducers.
- SomeType.ts: define data type.
- SomeUtils.ts: define utility functions if needed.
- style: extra css files.
- utils: common utility functions.

- api, components, store/slice directories are separated by its domain.

### Backend
- language: Python (v3.8)
- framework: FastAPI
- handle workflow by snakemake.

#### Directory structure
Following is the summary of directory structure.
- studio
- alembic: files for database migration. database is used in multi-user mode.
- app
- `Snakefile`: File read by snakemake. It defines how to run workflow by language like Python.
- common: common modules(not for specific domain)
- core: define core functions.
- dataclass: define dataclasses that are passed between nodes or used as visualize outputs.
- db: database general configuration.
- models: database models.
- routers: define fastapi routers.
- schemas: define pydantic schemas for api requests and responses.
- wrappers: functions for algorithm nodes.
- optinist: modules specific to calcium imaging data processing domain. It has same structure as common.
- config: configuration files.
- `standalone-logging.yaml`: logging config for standalone mode. In standalone mode, logs are sent to streams.
- `logging.yaml`: logging config for multi-user mode. In multi-user mode, logs are sent to file (in `logs` dir). log file rotation settings are included.
- you can manage log configurations by editing these files.
- auth: put Firebase authentication secret files.
- docker: backend Dockerfiles for each environment.
- test_data: test data for unit tests.
- tests: unit tests.
- `__main__.py`: entry point of backend in production.
- `__main_unit__.py`: core main unit. called by `studio/__main__.py` and `main.py`.
- `main.py`: entry point of backend in development.
- `run_cluster.py`: entry point for CLI run.
16 changes: 16 additions & 0 deletions docs/for_developers/index.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
.. _for_developers:

***************
FOR DEVELOPERS
***************

OptiNiSt welcomes your contributions.
See the following guidelines before submitting Pull Requests.

.. toctree::
:maxdepth: 2

style
pull_request
architecture
test
18 changes: 18 additions & 0 deletions docs/for_developers/pull_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
## Pull Request
- GitHub Pull Request page
- [https://github.com/oist/optinist/pulls](https://github.com/oist/optinist/pulls)

### Pre Commit
- run following command before your first commit
```
pre-commit install
```
- Once installed, it automatically checks your coding style on every commits.

### Branch rules
- You can submit Pull Request by pushing new branch.
- Make sure the base branch is `develop-main`, and PR is to `develop-main`.
- You can't push to the `develop-main` branch directly, the branch is protected.
- Make sure new branch name is in following format (`xxx` is the name of the feature or bug you are working on.).
- `feature/xxx`
- `fix/xxx`
23 changes: 9 additions & 14 deletions docs/utils/contributing.md → docs/for_developers/style.md
Original file line number Diff line number Diff line change
@@ -1,16 +1,4 @@
(Contributing)=
# Contributing to OptiNiSt
OptiNiSt welcomes your contributions.
See the following guidelines before submitting Pull Requests.

## Coding Style
### Pre Commit
- run following command before your first commit
```
pre-commit install
```
- Once installed, it automatically checkes your code style on every commits.

## Style Guides
### Python
- Format all files using [black](https://black.readthedocs.io/en/stable/#).
- Check the code for problems using [flake8](https://pypi.org/project/flake8/).
Expand All @@ -19,7 +7,14 @@ See the following guidelines before submitting Pull Requests.
- Sort your import using [isort](https://github.com/PyCQA/isort).
- These guides are checked by pre-commits, github workflow on submitting Pull Requests.

#### VSCode Settings
### TypeScript
- Format all files using [prettier](https://prettier.io/).
- Rules are defined in `frontend/.prettierrc.json`.
- Check the code for problems using [eslint](https://eslint.org/).
- Rules are defined in `frontend/.eslintrc.json`.

### Editor support
#### VSCode
- If you are using VSCode, you can use features (like format/lint on save) by installing and activating the extensions in `.vscode/extensions.json`.
- For these extensions, we provide example settings in `.vscode/settings.example.json`
- To use this,
Expand Down
Loading