Skip to content

T-TM1K-learning-p6-print-site

State: planning/proposed · Impact: medium · Complexity: medium

Publish a book as a static site. The site is an Astro template fed by @sksizer/obsidian-astro, which gains the one hook it lacks: a fence language mapped to a component, so exercises stay interactive in the static build without progress. The CLI grows print and publish.

LocationRole today
packages/ts/obsidian-astro/Vault to Astro collections; wikilinks resolved at build by its remark plugin; no fence-to-component mapping
solutions/augmented/apps/vimit/src-astro/The Astro site vimit is today: layouts, sidebar, progress meter, glossary and review pages; the chrome to carry over
solutions/determined/packages/runners/Plain Vue runners, mountable as islands
solutions/augmented/apps/augmented_dot_com/The Cloudflare static deploy precedent

sites/books/ is an Astro project that takes a vault path and builds a static book: catalog, parts, modules, glossary. A fenceComponents option in obsidian-astro maps vim-exercise and sql-exercise to the runner islands. learning print <vault> builds it; learning publish uploads bundles, catalog and site.

  1. Add fenceComponents to obsidian-astro’s remark plugin: a fence whose language is mapped becomes the component with the body as a prop.
  2. The Astro template, taking vimit’s layouts and stripping its stores.
  3. print and publish verbs.
  4. A CI job that prints the vim book and checks the build is deterministic.
AreaNote
packages/ts/obsidian-astro/fenceComponents
sites/books/The Astro template
solutions/determined/apps/learning-cli/print, publish
.github/workflows/ci.ymlPrint-site build job
  • AC-1: learning print vaults/vim produces a site whose module pages run the vim exercises.
  • AC-2: Two prints of the same vault are byte-identical.
  • AC-3: Pages are prose HTML; the runner is the only script on a page without an exercise.
  • Progress in the static site.
  • A static Nuxt build of the reader. A separate spike if wanted.
  • T-J3NW for the runners.
  • D-LIRI.

T-J3NW


← Back to Tasks