Skip to content

Conversation

@kabilar
Copy link
Member

@kabilar kabilar commented Jul 19, 2024

@kabilar kabilar requested review from bendichter and yarikoptic July 19, 2024 16:55
Copy link
Member

@yarikoptic yarikoptic left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is great, thank you @kabilar for taking care about this one!

  • do you see a way to add some kind of "header" or "trailer" (or both) to each notebook so we could point to the to the original notebook location on github, and possibly state something like

This Jupyter notebook is available from GitHub repository dandi / example-notebooks / demos / NWBWidget-demo.ipynb. You can also find it available while working on DANDI Hub under ... so you could run the code.

hub seems to be down ATM so couldn't double check where it is there on the hub. Also might be worth adding a link to the corresponding dandiset DLP if it is associated with a dandiset, e.g.

This notebook accompanies dandiset 000XXX.

or alike.

  • could we generate/include a page with an index of all notebooks by their filename (so not yet going deep into fixing to get the titles etc) so their all content gets rendered indexed? Crude listing/page generation script
❯ { echo "## Full list of example-notebooks"; find -iname '*.ipynb' | grep -v '\.ipynb_checkpoint' | sort | while read -r l; do echo "- [$l]($l)"; done } | head
## Full list of example-notebooks
- [./000004/RutishauserLab/000004_demo_analysis.ipynb](./000004/RutishauserLab/000004_demo_analysis.ipynb)
- [./000005/DataJoint/DJ-NWB-Yu-Gutnisky-2016/notebooks/Yu-Gutnisky-2016-examples.ipynb](./000005/DataJoint/DJ-NWB-Yu-Gutnisky-2016/notebooks/Yu-Gutnisky-2016-examples.ipynb)
- [./000006/DataJoint/DJ-NWB-Economo-2018/notebooks/Economo-2018-examples.ipynb](./000006/DataJoint/DJ-NWB-Economo-2018/notebooks/Economo-2018-examples.ipynb)
- [./000007/DataJoint/DJ-NWB-Gao-2018/notebooks/erd.ipynb](./000007/DataJoint/DJ-NWB-Gao-2018/notebooks/erd.ipynb)
- [./000007/DataJoint/DJ-NWB-Gao-2018/notebooks/Gao-2018-examples.ipynb](./000007/DataJoint/DJ-NWB-Gao-2018/notebooks/Gao-2018-examples.ipynb)
- [./000009/DataJoint/DJ-NWB-Guo-Inagaki-2017/notebooks/Guo-Inagaki-2017-examples.ipynb](./000009/DataJoint/DJ-NWB-Guo-Inagaki-2017/notebooks/Guo-Inagaki-2017-examples.ipynb)
- [./000009/DataJoint/DJ-NWB-Guo-Inagaki-2017/notebooks/Guo-Inagaki-2017-NWB-examples.ipynb](./000009/DataJoint/DJ-NWB-Guo-Inagaki-2017/notebooks/Guo-Inagaki-2017-NWB-examples.ipynb)
- [./000010/DataJoint/DJ-NWB-Li-2015b/notebooks/Li-2015b-examples.ipynb](./000010/DataJoint/DJ-NWB-Li-2015b/notebooks/Li-2015b-examples.ipynb)
- [./000010/DataJoint/DJ-NWB-Li-2015b/notebooks/Schemas.ipynb](./000010/DataJoint/DJ-NWB-Li-2015b/notebooks/Schemas.ipynb)

a better version could group them neatly under "Dandiset demos", etc

@bendichter
Copy link
Member

I think it might make more sense to render the notebooks on the example-notebooks CI and link to them rather than cloning that repo and rendering them here.

* origin/master: (130 commits)
  fix: upgrade the mkdocs-material dependency
  Update docs/60_initialize_vendors.md
  Update docs/59_overview.md
  replace proper logo, updates per Kabi's updates
  Various minor tune ups from code review
  Updates from Kabi's most recent updates
  update mkdocs logo
  update all png to jpg in docs
  Apply suggestions from code review
  Include heroku dyno and add on docs
  remove unnecessary images for pypi
  More updates per Kabi's review
  push updates per Kabi's review
  include logo description
  Add overview/architecture docs
  feat: enable rendering mermaid diagrams
  doc: Add doc for DANDI models integration
  Apply some suggestions from code review
  fix: fix broken link to NIDM in `policies.md`
  fix: fix broken link to project structure markdown file
  ...

Conflicts:
	mkdocs.yml -- example dandisets were added under "Tutorials". kept the same for now
	requirements.txt
@yarikoptic
Copy link
Member

@kabilar pushed! works nicely locally -- thanks!

The "problem" -- it does render all notebooks but we reference only few -- we should autopopulate some page listing all of them and then reference it there in the menu.
Moreover added since then "Tutorials: Dandiset examples" is somewhat of a duplicate... Any specific ideas?

we could also do it separately in a follow up issue + PR and merge this asap to avoid future conflicts etc

@kabilar
Copy link
Member Author

kabilar commented Feb 21, 2025

@kabilar pushed! works nicely locally -- thanks!

Thanks, Yarik.

The "problem" -- it does render all notebooks but we reference only few -- we should autopopulate some page listing all of them and then reference it there in the menu. Moreover added since then "Tutorials: Dandiset examples" is somewhat of a duplicate... Any specific ideas?

we could also do it separately in a follow up issue + PR and merge this asap to avoid future conflicts etc

Agree that we should proceed with the merge here and address in the future. We should also probably also integrate that page listing with https://dandi.github.io/example-notebooks/.

@kabilar kabilar merged commit 46bd276 into dandi:master Feb 21, 2025
2 checks passed
@satra
Copy link
Member

satra commented Feb 21, 2025

whenever we merge some of these notebooks, it makes me think why are we not using a jupyterbook here? it would serve all the purposes i think and for these tutorials people could actually open them in binder/jupyterhub.

@kabilar
Copy link
Member Author

kabilar commented Feb 21, 2025

whenever we merge some of these notebooks, it makes me think why are we not using a jupyterbook here? it would serve all the purposes i think and for these tutorials people could actually open them in binder/jupyterhub.

Hi @satra, I agree that jupyterbook has some nice features. I proceeded with the mkdocs-jupyter plugin here since it was an easy addition and didn't require changing frameworks. We can evaluate changing to jupterbook in the future, which I would like to compare against Hugo since the about.dandiarchive.org site is now using Hugo.

@kabilar
Copy link
Member Author

kabilar commented Feb 21, 2025

Filed #189

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Include notebooks into handbook?

4 participants