URL switches
Every parameter the pages read from the address bar that nothing in the UI discovers.
Written up on request (feedback mike-foxtrot-94, 2026-09-06) so design passes can be
done from a link. sticky = the value is remembered in this browser
after one visit; everything else applies to that page load only. Case matters as written.
Design passes
| Parameter | What it does | Where |
|---|---|---|
?chipshape=tall · pill |
Fungible chips as a taller, squarer chip with the symbol on top and a smaller, muted amount beneath (tall, now the default), or the one-line original (pill). Same as ⚙ Settings → 🧪 Chip shape, but for this load only — the setting is not changed. A shape you have explicitly saved in Settings still wins over the default. |
board |
?primary=hug · wide |
The emphasised primary button (Add account) sized to its label and centred in the row (hug, the default), or stretched across the full width as it was (wide). |
board |
?skin=carousel · ?conveyor=1 |
The carousel board (CAROUSEL1). The circle unwrapped into two stripes: other players' accounts as cards in a scrolling row on top, your accounts in a scrolling row below, baskets facing each other across a centre strip that carries the K, the lock tally and — while signing — the same countdown pill and tap-to-sign as the hub. Same chips, same drag-and-drop, same footer. Also in ⚙ Settings → Board skin (nerd mode) as 🎠 Carousel. ?conveyor=1 starts the top row drifting past on its own (the ⟳ button toggles it; it pauses while your finger or pointer is on the row). Round Table is untouched; this is a separate renderer in katomia-carousel.js. |
board |
?counter=perzone |
The counter (the ghost-only band between the ring and the store). By default it is now ONE depth for the whole board, capped at a single NFT thumbnail, so no segment reads as more restricted than its neighbours. perzone restores the old rule, where each segment's counter was sized by its own tallest chip — which is why a segment full of NFTs reserved a visibly deeper counter, and had correspondingly less room to move its chips. Easiest to see with ⚙ Settings → 🧪 Show zone walls on. |
board |
?qrlayout=tail · notail · top |
Where the offline QR sits. tail (default, unchanged) keeps the blank scroll space below the QR so it can be pulled up away from the screen edge. notail removes that space. top removes it and scrolls the row of wallet options right to the top of the modal, so the QR rides as high as the modal allows.Two pieces of feedback pulled in opposite directions here — one asked for the space gone, the next said leave it alone rather than risk making it worse — so nothing changed by default and all three are a link away. |
signing modal |
?hatch=3,3,0.03,45 |
The BEFORE/AFTER texture, in one parameter: dark,gap,alpha,deg.
dark = width of the darker line in px. gap = width of the lighter gap between
them in px. alpha = 0–1, how far the dark line deviates from the base. deg =
the lean of the pink; the green always mirrors it.
Defaults are 3,3,0.03,45. Leave a part empty to keep its default (?hatch=,,0.12 tunes only the alpha) and
drop the trailing ones you don't need (?hatch=2,3). ?hatch=0 turns
the texture off.Where the base comes from: the LIGHT band is the plain panel tint the card has always had ( #fdf2f2 pink, #eff7f1 green). The DARK band is that same tint
with the strong hue laid over it at alpha — so alpha is the deviation, and the
only way to move the base itself is to change the panel colour. |
signing modal |
?hatchw= · ?hatcha= · ?hatchdeg= |
The older single knobs, still honoured so anything bookmarked keeps working.
?hatchw= is the whole pitch (dark + gap), not the line. ?hatch=
wins where both are given. |
signing modal |
?txview=cards · table · nerd |
Which transfer view the signing modal renders: the T-account cards (normal default), the line-item table (nerd default), or every registered view stacked. | signing modal |
?signtabs=walletconnect,whatsapp,offline |
Which signing methods the modal offers (comma list; aliases wc, wallet, offline=ksig). Unknown or empty → all. |
signing modal |
?sign=external |
Tapping the board's hub during signing opens /m/sign in a new tab (the old flow) instead of the modal over the board. Default = in the game. | board |
?skin=ring16 |
Board skin. Only one exists today; the id stays for when there are more. | board |
?mark=o · end sticky |
Where the brand ring sits in the wordmark: inside the O (Kat◍mia) or after the word. | every page |
?tickets=1 |
Priced tickets in proposal circles (lab feature; same as ⚙ Settings → 🎟 Allow tickets). | board |
Dev & diagnostics
| Parameter | What it does | Where |
|---|---|---|
?kchanges=1 |
Offers ☰ → 🗒️ Show changes and ☰ → 📋 Changes without needing an admin account authenticated in this browser (the on/off state itself is then remembered). | every page |
?kch=B07 |
Opens that change's note on arrival — what ☰ → 📋 Changes puts on a "take me there" link. Strips itself from the address bar; falls back to the list with the entry open if the thing it points at isn't on screen. | every page |
?kdiag=1 · 0 sticky |
Client diagnostics to the backend on (1) or off (0). Remembered until set again. |
every page |
?ktag=1 · 0 session |
Shows the correlation-tag badge (top-left) for cross-referencing diagnostics; remembered for the tab. | every page |
?fullstate=1 |
Opts out of incremental (delta) state updates and receives full-state broadcasts — the old wire behaviour, for debugging sync. | board / game |
?demo=1 |
Runs the board's scripted demo instead of connecting to a real circle. | board |
?hapi_base=host |
Admin override of which backend the signing widget talks to (cross-origin). Never forwarded upstream. | signing modal / sign page |
?breakout=on-lock · off |
Test hook for the create form's breakout rule, overriding the form's own selection. | create |
?pair=KBRL/KGBP |
Which market pair order mode shows. | game (order mode) |
?autoload=… |
Pre-selects a circle/action to load on arrival (legacy game page plumbing). | game |
?created=1 |
Set by the create form on the way to a new circle: shows the share-link toast once, then strips itself from the address bar. | board |
#sign=network:txid:pch |
Not a query parameter — a hash. The open signing modal is mirrored here so a refresh or a bookmark reopens the same transaction. | board / game |
Parameters combine freely: /m/katomia/board/m-prop?chipshape=tall&hatcha=0.15.
When one of these becomes a real setting, it moves out of here into ⚙ Settings or Profile and gets a line in the change notes.