Skip to content

feat: tutorials genre - #600

Merged
david-christiansen merged 64 commits into
mainfrom
tutorials
Jan 15, 2026
Merged

feat: tutorials genre#600
david-christiansen merged 64 commits into
mainfrom
tutorials

Conversation

@david-christiansen

Copy link
Copy Markdown
Collaborator

Adds a genre for tutorials.

Tutorials are very much like the manual genre, and re-use most of its infrastructure and extensions. The differences are:

  1. The rendering of tutorials is more flexible, designed to fit in to existing web designs (and in particular, the Lean design).
  2. Tutorials have different metadata, and will not initially support non-HTML output.

Additionally, tutorials will feature support for loading their content on live.lean-lang.org and downloading their example code.

Adds a genre for tutorials.

Tutorials are very much like the manual genre, and re-use most of its
infrastructure and extensions. The differences are:
 1. The rendering of tutorials is more flexible, designed to fit in to
    existing web designs (and in particular, the Lean design).
 2. Tutorials have different metadata, and will not initially support
    non-HTML output.

Additionally, tutorials will feature support for loading their content
on live.lean-lang.org and downloading their example code.
@david-christiansen

david-christiansen commented Oct 29, 2025

Copy link
Copy Markdown
Collaborator Author

TODO:

  • Test with content in Lean manual repository
  • Live links
  • Tested project tarballs
  • Mutual cross-references with manual-genre documents in same repository

This will be used for buildable example projects.
Generating HTML can now be split into two separate runs. The first
performs traversal and generates a file with the resulting document
and the traversal state, emitting xref.json as a side effect. The
second reads this serialized state and generates HTML. This is to
allow multiple documents to be built together with mutual
cross-references.
@david-christiansen
david-christiansen marked this pull request as ready for review December 19, 2025 15:56
@david-christiansen
david-christiansen added this pull request to the merge queue Jan 15, 2026
Merged via the queue into main with commit 142f6c8 Jan 15, 2026
8 checks passed
@david-christiansen
david-christiansen deleted the tutorials branch January 15, 2026 09:52
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.

1 participant