Tutorial 1: Writing Content in MyST Markdown¶
MyST (Markedly Structured Text) is the markup language powering this book. It extends standard Markdown with directives and roles that produce rich, structured scientific content.
Why MyST instead of notebooks?¶
MyST .md files are the source of truth for this template. Jupyter notebooks
(.ipynb) are generated automatically by CI — you never edit them by hand.
Benefits:
Clean git diffs — no output noise, no cell metadata churn
Human-readable — readable in any text editor
Full Jupyter execution at build time and in-browser via JupyterLite
Basic Markdown¶
Everything standard Markdown supports works in MyST:
Bold, italic,
inline codeImages:

Admonitions¶
Use admonitions to call out notes, warnings, and exercises:
Code cells¶
Add executable code with the {code-cell} directive:
# This cell runs in JupyterLite (in the browser) or via myst build --execute
message = "Hello from MyST!"
print(message)Hiding cells¶
Tag cells to control visibility:
Source
# Students see the output but not this code
import numpy as np
print(f"pi = {np.pi:.6f}")Summary¶
Write prose in plain Markdown
Use {code-cell} for executable code
Use admonitions to structure exercises and notes
Tag cells with hide-input or remove-cell to control what students see