Tables: alignment, code, math inline

Showing the table-rendering primitives. Tables are where most documents fall apart — wrong alignment, wide cells, code formatting eats the layout. The patterns below work.

Right-align numerics, left-align text

Provider Embedding model Dim Latency p95 (ms) $/1M tokens
OpenAI text-embedding-3-small 1536 8 $0.02
OpenAI text-embedding-3-large 3072 14 $0.13
Voyage voyage-3-large 1024 12 $0.18
Cohere embed-v4 1024 28 $0.10

The ---: alignment marker is the part most authors miss. Numbers want to be right-aligned so columns line up at the decimal.

Inline code inside cells

Endpoint Method Auth Description
/api/docs/{id} GET optional Fetch a doc by id
/api/docs POST editToken Create a new doc
/api/bundles/{id}/graph POST editToken or owner Trigger AI analysis
/api/hub/{slug}/recall POST optional Hybrid recall against a public hub

Math inside cells

Concept Notation Where it shows up
Identity eiπ+1=0e^{i\pi}+1=0 Slide 0 of any math lecture
2-norm x2=ixi2|x|_2 = \sqrt{\sum_i x_i^2} Vector normalisation in recall
Cosine similarity cosθ=xyxy\cos\theta = \frac{x \cdot y}{|x||y|} Every retrieval call
Softmax σ(xi)=exijexj\sigma(x_i) = \frac{e^{x_i}}{\sum_j e^{x_j}} Reranker score normalisation

When to break out of a table

If a row needs more than ~80 chars of prose in any one cell, the table is the wrong shape. Use a bulleted list or a short heading hierarchy instead. Tables earn their formatting by enabling comparison; once a single row needs paragraphs, the comparison is no longer the point.