Katagami Converter
Katagamiv0.1 GitHub ↗

See any site in Katagami

Type an address and the page comes back with every font swapped for Katagami: body and headings in the member you pick, code in Katagami Mono, serif in Katagami Text. The rewrite runs in your browser and is deterministic, so the same page always converts the same way.

Try
Set in
Nothing loaded yet
Type an address above

Links inside the preview open their page in Katagami too. Scripts from the page do not run, so anything a site draws with JavaScript stays blank.

Converted HTML

On the live site

The preview is a copy without the site's scripts. To convert the real page, with its scripts running and while you are signed in, run the converter inside it. It rewrites the stylesheets it can read, sweeps every element once, and converts content a single-page app adds later. Reload to undo.

Katagami this page
  1. Drag the button above to your bookmarks bar.
  2. Open any site and click the bookmark.
  3. Or paste the snippet into the browser console (⌥⌘J or Ctrl+Shift+J).

A site whose Content Security Policy blocks other domains' fonts or scripts can stop the bookmark or keep Katagami from loading.

Console snippetthe same code as the bookmark

How it decides

Each font stack is judged by its first family, then by its generic fallback. Katagami goes in front and the original stack stays behind it, so any character Katagami does not have falls back to the font the site had. Sites that set fonts through CSS variables are converted where the variable is defined.

The stack starts withBecomesExample
A monospace family, or ends in monospaceKatagami Mono"SF Mono", Menlo, monospace
A serif family, or ends in serifKatagami TextGeorgia, serif
An icon or emoji fontUnchanged"Material Symbols Outlined"
var(--x)Unchanged; --x is converted--font-sans: Inter, sans-serif
inherit, initial or unsetUnchangedfont-family: inherit
Anything elseThe member you pickInter, system-ui, sans-serif

Browsers do not let one site read another's pages, so an address goes through a small relay on this site, /api/fetch, which returns the page, stylesheet and font bytes and nothing else. Pasted HTML never leaves the page.