Hello, world
This post has no argument to make. It exists so every part of the rendering pipeline has something to render.
Text
Regular text, emphasis, strong, inline raw, underline, strike, highlight, H2O and E = mc2. A link out, and a link to another page that the build resolves and checks.
A block quote, attributed.
โ nobody in particular
Lists
- A bullet
-
Another bullet
- Nested one level
- First
- Second
- Third
- Term
- A term list, which Markdown does not have.
- Another
- And its definition.
Code
Fenced blocks are highlighted by the compiler, not by a client-side script:
pub fn slug(name: &str) -> String {
name.chars()
.map(|c| if c.is_alphanumeric() { c.to_ascii_lowercase() } else { '-' })
.collect()
}
content {
collections {
blog { sort "date"; reverse #true; paginate { size 5; template "list.typ" } }
}
}
#let frontmatter = (title: "Hello, world")
Math
Inline, , and displayed:
Tables
| Format | File | Standard |
|---|---|---|
| RSS | rss.xml |
RSS 2.0 |
| Atom | atom.xml |
RFC 4287 |
| JSON | feed.json |
JSON Feed 1.1 |
A page is a program
The three things above are markup. This is not: the table below is a for loop over a list, and the list came from a string the compiler parsed at build time.
| Crate | Job |
|---|---|
typst |
compile |
rolldown |
bundle |
lightningcss |
minify |
blake3 |
fingerprint |
A function is a function, so markup can be generated:
v0.1 v0.2 v0.3 v0.4 v0.5
Callout
Nothing here
Every block on this page is a feature test. If one of them stops rendering, the build noticed before you did.