{"version":"v1.0","client_state":{"Studio.default":{"fields":{"primary":"#682747","secondary":"#3a52b0","success":"#2f9e64","warning":"#f0a91b","error":"#e5484d","info":"#0e9bc4","background":"#fafafa","surface":"#ffffff","interface":"#f0f0f1","text":"#171717","muted":"#6b6b6e","d_primary":"#682747","d_secondary":"#3a52b0","d_success":"#2f9e64","d_warning":"#f0a91b","d_error":"#e5484d","d_info":"#0e9bc4","d_background":"#0a0a0a","d_surface":"#151515","d_interface":"#212121","d_text":"#f5f5f5","d_muted":"#a0a0a3","spacing":0.1875,"box":0.75,"field_":0.75,"selector":0.375,"stroke":1.0,"font":"ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'"},"persist":"local","send_to_server":true},"ColorScheme.default":{"fields":{"mode":"system"},"persist":"local","send_to_server":true}},"endpoints":{"action":"/_bretzel/action","sse":"/_bretzel/sse","refetch":"/_bretzel/refetch"},"csrf":"b8fda0e013b833a0a38b11ccb1fcbdec","page_id":"57fffaeed89d4c188ceddb9b175abd72","address":""}
ui.code

Code

Syntax highlighting done in Python with Pygments — hundreds of languages, zero JavaScript, repainted by the theme.

A Python snippet

lang= names a Pygments lexer; the colours come from the theme.
from bretzel import refreshable, ui
from bretzel.state import PageState, field


class Cart(PageState):
    items: int = field(default=0)


def add_to_cart() -> None:
    Cart().items += 1


@refreshable(deps=[Cart])
def cart_button() -> None:
    ui.button(f"Cart · {Cart().items}", on_click=add_to_cart)

One request, three languages

Tabs and code blocks: the classic API reference layout.
curl https://api.northwind.dev/v1/invoices \
  -H "Authorization: Bearer $NORTHWIND_KEY" \
  -d customer=cus_8f2a -d amount=428000

A response and a query

200 OK · application/json
{
  "id": "inv_2041",
  "status": "paid",
  "amount": 428000,
  "currency": "eur"
}
migrations/0042_overdue.sql
SELECT customer, SUM(amount) AS due
FROM invoices
WHERE status = 'overdue'
GROUP BY customer
ORDER BY due DESC;

A config file

pyproject.toml
[project]
name = "northwind-billing"
requires-python = ">=3.12"
dependencies = ["bretzel>=2.0", "httpx"]

[tool.ruff]
line-length = 100

Plain text

lang defaults to Python; lang="text" shows the text as is, in the monospace font.
2026-09-29 09:41:02  INFO   worker-3  invoice INV-2041 sent
2026-09-29 09:41:05  WARN   worker-1  retrying webhook (2/5)
2026-09-29 09:41:09  INFO   worker-1  webhook delivered in 212 ms