name↓createdmodifiedsizefiles
Apr 24, 2026 Apr 24, 2026 16.3 KB 11
Apr 18, 2026 Jul 6, 2026 2.4 KB

typst

sublimated renders .typ files as multi-page documents. push via git, view the rendered pages on the web.

  • documents compile to PDF + SVG pages on push — instant viewing, no client-side rendering
  • text is selectable and copyable (font-aware text overlay on SVG pages)
  • heading anchors for deep linking (e.g. docs/typst/demo/basics.typ#introduction)
  • multi-file projects work — #import, #include, and #image resolve relative paths
  • block-level structure extracted for comments, diffs, and semantic analysis
  • edit mode uses CodeMirror (same as .ts, .py, etc)

demos

one file per feature area — push them to see them rendered:

  • basics — headings, paragraphs, emphasis, lists
  • math — equations, symbols, matrices, aligned expressions
  • code — code blocks, inline code, syntax highlighting
  • tables — tables with headers, alignment, styling
  • figures — figures with captions, placement, numbering
  • layout — page setup, columns, spacing, breaks
  • styling — custom fonts, colors, show rules, set rules
  • functions — variables, functions, conditionals, loops
  • bibliography — citations and bibliography
  • article — a complete article combining all features

how it works

  1. push a .typ file via git (or save via edit mode)
  2. sublimated sends it to the typst compiler (sbl-typst, based on typst v0.13)
  3. three outputs are generated and stored in CAS:
    • PDF — downloadable, printable
    • SVG pages — one SVG per page for the web viewer
    • manifest — semantic structure (headings, figures, equations, text runs)
  4. the web viewer displays SVG pages with a transparent text layer for selection
  5. heading anchors enable deep linking into the document

multi-file projects

typst documents can import other files. sublimated clones the full folder context before compiling, so relative imports work:

#import "utils.typ": template
#import "data.typ": results

#show: template

#include "chapters/intro.typ"

push your entire project folder — all imports resolve automatically.

embedding in markdown

use content block transclusion to embed a rendered .typ document in markdown:

/path/to/document.typ

the rendered pages appear inline.