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
`learn.scientific-python.org` builds with Hugo via `make html` and deploys via
11
-
Netlify (auto-deploy on push to `main`). We want to convert the content files
11
+
Netlify (auto-deploy on push to `main`). We want to convert the content files
12
12
to MyST syntax.
13
13
14
14
## Decision
15
15
16
-
Replace Hugo with **MyST-MD** (`mystmd` CLI, `myst build --html`)
16
+
Replace Hugo with **MyST-MD** (`mystmd` CLI, `myst build --html`)
17
17
as the single build and deploy tool.
18
18
19
19
## Options considered
20
20
21
-
| Option | Pros | Cons |
22
-
|--------|------|------|
23
-
|**Stay on Hugo**| Theme parity with sibling SP sites; no content changes needed | Hugo is not Python; MyST content conversion still desirable long-term |
24
-
|**jupyter-book**| Python-native; fits SP ecosystem conventions; familiar to SP contributors | Wraps `mystmd` under the hood — adds a layer; less direct than the CLI |
|**Stay on Hugo**| Theme parity with sibling SP sites; no content changes needed | Hugo is not Python; MyST content conversion still desirable long-term|
24
+
|**jupyter-book**| Python-native; fits SP ecosystem conventions; familiar to SP contributors| Wraps `mystmd` under the hood — adds a layer; less direct than the CLI |
25
25
|**MyST-MD** (`mystmd` CLI) | Single tool; native MyST markdown; first-class cards/grids/admonitions; active ExecutableBooks development | Node-based toolchain; theme/footer customisation less mature than Hugo |
| 1 | Footer / quicklinks |**Defer**: file follow-up issue, ship MyST default footer | Custom MyST theme work blocks the migration; visual parity is not a SciPy 2026 must-have. |
58
-
| 2 | Cookie / Jekyll |**Defer**: keep the submodule and `make cookie` target unchanged in this PR | External content lives at `/development/`; touching Jekyll doubles the PR scope. |
59
-
| 3 | Netlify |**Update `netlify.toml`**: remove Hugo/Dart Sass toolchain setup; add `pip install mystmd`; keep `make html-all` as build command | Netlify is the active deploy target for the live site and PR previews. Minimal change; see ADR 0007. |
60
-
| 4 | Preview deploy |**No change needed**: Netlify handles PR previews automatically from `netlify.toml`| Updating the build command in Phase 5 is sufficient; no workflow changes required. |
61
-
| 5 | Other SP repos |**Tracking issues only**, filed at end of PR | This PR proves the pattern; sibling repos adopt independently. No code coupling. |
62
-
| 6 | Theme submodule |**Remove in this PR**| The submodule is consumed only by Hugo, which is being removed. The other three repos vendor their own submodule and are unaffected. |
| 1 | Footer / quicklinks |**Defer**: file follow-up issue, ship MyST default footer | Custom MyST theme work blocks the migration; visual parity is not a SciPy 2026 must-have.|
58
+
| 2 | Cookie / Jekyll |**Defer**: keep the submodule and `make cookie` target unchanged in this PR | External content lives at `/development/`; touching Jekyll doubles the PR scope.|
59
+
| 3 | Netlify |**Update `netlify.toml`**: remove Hugo/Dart Sass toolchain setup; add `pip install mystmd`; keep `make html-all` as build command | Netlify is the active deploy target for the live site and PR previews. Minimal change; see ADR 0007.|
60
+
| 4 | Preview deploy |**No change needed**: Netlify handles PR previews automatically from `netlify.toml`| Updating the build command in Phase 5 is sufficient; no workflow changes required.|
61
+
| 5 | Other SP repos |**Tracking issues only**, filed at end of PR | This PR proves the pattern; sibling repos adopt independently. No code coupling.|
62
+
| 6 | Theme submodule |**Remove in this PR**| The submodule is consumed only by Hugo, which is being removed. The other three repos vendor their own submodule and are unaffected. |
63
63
64
64
---
65
65
@@ -91,6 +91,7 @@ npm, etc.).
91
91
-`make html` (Hugo) still works — coexistence proven.
92
92
93
93
### CI status: still green.
94
+
94
95
Only `lint.yml` runs at this point; no deploy workflow exists yet.
95
96
96
97
---
@@ -123,6 +124,7 @@ changes.
123
124
intentionally cutting over.
124
125
125
126
### CI status: **Netlify deploy fails** (Hugo can no longer find section
127
+
126
128
indices after the rename). Lint passes. This is the first commit where
127
129
the deploy is intentionally broken; it remains broken through Phase 5.
128
130
All commits on this PR are merged together — local `myst build --html`
@@ -143,6 +145,7 @@ mapping pattern **once per shortcode type**, not nine times.
0 commit comments