Blog

Writing a post

This is a demo post, not a real one. It exists so the team can see what the blog handles and how to write for it.

Every post is a single Markdown file in the repository. Push it and the site rebuilds.

Plain writing

Paragraphs are paragraphs. Bold works, and so do links, which pick up the site's red. A blank line starts a new paragraph.

  • Lists are bullet lists

  • A bold lead-in, followed by the rest of the point

    • Nested lists work too

Sub-headings are h3

Math is written between dollar signs. Inline, the loop invariant sits in the sentence. Display math takes a line of its own:

And something with a fraction and a sum, to check the type sits well against Formular:

The glyph heading is a heading with a marker

Write ### Heading {glyphs} and it becomes the row with the three shapes.

Code, charts and embeds

Fenced code with the verus language gets the highlighted card:

fn max(a: u64, b: u64) -> (r: u64)
    ensures r >= a, r >= b, r == a || r == b,
{
    if a >= b { a } else { b }
}

A chart is one line, {% chart "part3-fig1" %}, and it comes with the mobile card:

Raw HTML passes straight through, so anything that needs a custom embed can have one. This is a plain HTML block:

A custom HTML embed, exactly as written in the Markdown file.

Sizing figures and embeds

An image on its own line sits in the text column at its natural width, capped to the column:

The post's hero image

For control over width and a caption, use the figure shortcode. Widths are column (the text column), wide (1200px) and full (edge to edge):

A wide figure with a caption
A wide figure with a caption

Embeds take an explicit height and a width, which is what an animated dashboard needs. Same-origin charts still auto-fit; anything hosted elsewhere keeps the height you give it. On phones an embed becomes a tap-to-open card by default, or set mobile: "inline" to keep it in the page:

A canvas or any script-driven piece can be written straight into the file as HTML, sized by its own attributes:

Sections

A line with three dashes starts a new section, which is the larger gap you see above this heading.

Follow our work

Inspect

Verify

Trust

© reasonable ai 2026

Inspect

Verify

Trust

© reasonable ai 2026

Inspect

Verify

Trust

© reasonable ai 2026