-
v0.12.0 — UX feel polish round 2
released this
2026-05-02 03:09:09 +00:00 | 501 commits to master since this releaseSix small UX feel improvements on top of v0.11.0, plus the README
and CHANGELOG refresh that should have ridden along with v0.11.0
itself. Together they make the play surface feel more responsive,
forgiving, and discoverable.UX feel polish
- Foundation completion flourish. Each Ace-through-King run now
fires a brief celebration when the King lands: scale-pulse on the
King card, marker tints STATE_SUCCESS, and a synthesised C6→E6→G6
bell ping (~240 ms, octave above win_fanfare's root so the fourth
completion + win cascade layer cleanly). New
FoundationCompletedEvent carries the trigger. - Drag-cancel return tween. Illegal drops glide each dragged card
back to its origin slot over 150 ms with a quintic ease-out
(Responsive curve, zero overshoot — reads forgiving rather than
jittery). The audio cue still fires for negative feedback. - Focus ring breathes. The keyboard focus ring's alpha modulates
with a 1.4 s sin curve over [0.65, 1.0] of native value so it
catches the eye on focus changes without competing with gameplay.
Static under AnimSpeed::Instant. - First-win achievement onboarding. After the player's very first
win a one-shot info toast surfaces "First win! Press A to see
your achievements." Persisted via Settings.shown_achievement_
onboarding so the cue never re-fires. - Mode Launcher digit shortcuts. Pressing M opens the Home modal
(Mode Launcher); pressing 1-5 inside it launches each mode
directly without Tab+Enter. Locked modes (level < 5) silent
no-op. Modal-scoped — won't accidentally launch mid-game.
Fixes
- Card aspect ratio matches hayeah SVGs. CARD_ASPECT 1.4 → 1.4523
to match the bundled artwork's natural 167.087 × 242.667
dimensions. Cards previously rendered ~3.6 % vertically squashed.
The vertical-budget math in compute_layout adapts via the
constant.
Documentation
- README refresh with v0.11.0+ features and a corrected controls
table (the previous version had Z/U inverted and listed H for
help when F1 is the actual binding). - CHANGELOG.md added covering v0.9.0 through v0.12.0 with Keep a
Changelog 1.1.0 conventions.
By the numbers: 1007 passing tests (was 982 at v0.11.0), zero
clippy warnings under --workspace --all-targets -- -D warnings.Downloads
- Foundation completion flourish. Each Ace-through-King run now