You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
jupyter-book/mystmd#1882 adds native myst build --ipynb support via a new myst-to-ipynb package. This is the correct path forward for building downloadable notebooks from MyST source files. The PR is in Draft status and needs contributions to be production-ready.
frontmatter parameter accepted but never used — should populate metadata.kernelspec and metadata.language_info
myst-to-ipynb/src/index.ts
2
Language hardcoded to 'python' — should derive from frontmatter kernelspec
myst-to-ipynb/src/index.ts
3
Log message says "Exported MD" instead of "Exported IPYNB"
myst-cli/src/build/ipynb/index.ts
4
Redundant +++ markers leak into markdown cells (stated TODO)
myst-to-md interaction
5
package.json homepage URL points to myst-to-md not myst-to-ipynb
myst-to-ipynb/package.json
Missing Functionality
#
Gap
Priority
1
No cell metadata — tags like hide-input, hide-output, remove-cell are lost
High
2
No output preservation — outputs: [] always empty; executed notebook outputs are discarded
High
3
No kernel metadata from frontmatter — kernelspec not populated from page/project config
Medium
4
~20+ test cases commented out in basic.yml (thematic break, blockquote, lists, link, image reference, code variants, etc.)
Medium
5
No multi-article/book export — only single-page export
Low
Critical Issue: MyST-Flavored Markdown in Notebook Cells
myst-to-ipynb delegates markdown cell generation to myst-to-md, which outputs MyST directive syntax, not plain CommonMark:
Content
Output in notebook
Plain equivalent
Admonition
:::{note}\ntext\n:::
> **Note:** text
Figure
:::{figure} path\n:::

Math block
```{math}\nE=mc^2\n```
$$E=mc^2$$
Tabs, cards, grids
:::{tab-set}\n::: etc.
No equivalent
This means users need jupyterlab-myst installed to render the notebooks properly. jupyterlab-myst is not bundled by default in JupyterLab. Google Colab does not support it at all.
Summary
jupyter-book/mystmd#1882 adds native
myst build --ipynbsupport via a newmyst-to-ipynbpackage. This is the correct path forward for building downloadable notebooks from MyST source files. The PR is in Draft status and needs contributions to be production-ready.QuantEcon is cc'd on this PR (mmcky commented), kp992 has contributed tests via #1915, and we need this for
lecture-python-programming.myst(QuantEcon/lecture-python-programming.myst#345).PR #1882 Status
ipynbas export format"myst-to-ipynbonjupyter-book/mystmd+++markers in Markdown cells"Bugs Found in PR
frontmatterparameter accepted but never used — should populatemetadata.kernelspecandmetadata.language_infomyst-to-ipynb/src/index.ts'python'— should derive from frontmatter kernelspecmyst-to-ipynb/src/index.tsmyst-cli/src/build/ipynb/index.ts+++markers leak into markdown cells (stated TODO)myst-to-mdinteractionpackage.jsonhomepage URL points tomyst-to-mdnotmyst-to-ipynbmyst-to-ipynb/package.jsonMissing Functionality
hide-input,hide-output,remove-cellare lostoutputs: []always empty; executed notebook outputs are discardedkernelspecnot populated from page/project configbasic.yml(thematic break, blockquote, lists, link, image reference, code variants, etc.)Critical Issue: MyST-Flavored Markdown in Notebook Cells
myst-to-ipynbdelegates markdown cell generation tomyst-to-md, which outputs MyST directive syntax, not plain CommonMark::::{note}\ntext\n:::> **Note:** text:::{figure} path\n:::```{math}\nE=mc^2\n```$$E=mc^2$$:::{tab-set}\n:::etc.This means users need
jupyterlab-mystinstalled to render the notebooks properly.jupyterlab-mystis not bundled by default in JupyterLab. Google Colab does not support it at all.Options
jupyterlab-myst— simplest, unblocks pipeline--plain-markdownflag tomyst-to-ipynb— needed for Colab compatibilityRecommendation: Start with Option A to unblock, then pursue Option B upstream for Colab compatibility.
Recommended Contributions
frontmatter→ kernelspec metadata mapping (bugs Links in Python lectures need to be checked #1 & Possible renaming of three Python lecture series #2)basic.yml— need these working for production usehide-input/remove-cellpatterns+++marker issue (bug [Lectures] Remove titles from Index due to addition of index role #4)lecture-python-programming.mystCI Pipeline (once PR merges)
Until PR #1882 merges, use a custom build of mystmd from the
myst-to-ipynbbranch.Related
window.print()fallback — tracked inquantecon-theme-srcreview