Board Sense v0.2: pins, skewers, and the math of "under pressure"
The v0.1 post ended with a promise: pins, skewers, and discovered attacks next. Delivered — and this position is why I wanted them. It’s the Opera Game after 12…Rd8, and with motif lines on you can see Black’s whole problem at a glance: the d7-knight is pinned to the king, the f6-knight is pinned to the queen, and the d-file is about to explode. Morphy saw this instantly in 1858, at the opera, while allegedly paying more attention to the music. Now the rest of us can see it too.

Pins and skewers draw in pink, discovered attacks in teal, on hover of any involved piece or all at once with a toggle. The lesson from v0.1 — that the real work is deciding what not to show — came right back: discovered attacks only trigger for king and queen targets, because flagging every “technically a discovery onto a pawn” turned the board into noise. There’s also a new legal control toggle: absolutely pinned pieces keep only the squares along their pin line, and kings stop “controlling” squares that are covered by the enemy. It’s off by default, because I think of control as pressure rather than legality, but it’s one checkbox when the difference matters.
The sneaky-big change is invisible: “under pressure” used to mean attackers outnumber defenders, which is how a beginner counts — and beginners get burned by it, because defended and safe are not the same thing. Now it runs a real static exchange evaluation: play out the capture sequence, cheapest attacker first, x-rays included, and see who actually wins material. The pieces it flags now are the ones that are genuinely about to be lost, not just the crowded ones. Every rule like this gets locked in by tests that encode known chess truths — 10. Nxb5 in the Opera Game must leave e4 hanging and not b5, forever — so CI catches me if a “fix” quietly breaks the chess.
Board Sense also stopped being a private toy: any position now has a shareable URL, you can paste a Lichess game link straight in, and there’s one-click PNG export of the board. It also has a new home — boardsense.web.app — living under the Sun Labs umbrella on the same infrastructure as this site. Next up: opening lessons with per-move annotations, and the long-shot goal — explaining in plain language why a square matters.