Rich text without regret
9 min
Rich text is where layout sneaks back into content.
Store markup, not styling
Markdown and MDX store structure: this is a heading, this is a list, this is a link. HTML pasted from a word processor stores fonts, colours and inline widths, which is the thing you were trying to avoid.
Components are the escape hatch
When a post genuinely needs a callout or an embed, expose it as a named component the writer
can use — <Callout> — rather than letting them hand-write a styled div. The renderer
decides what a callout looks like. The writer decides where one goes.