Changelog.

What changed, when. Latest first.

Pre-launch

Initial build

  • Declarative SVG puzzle renderer rebuilt from scratch — content-aware viewBox, full variant constraint zoo (thermos, killer cages, German whispers, kropki, arrows, fog underlays, custom overlays).
  • Import pipeline accepts Penpa, SudokuPad, F-puzzles, and puzz.link URLs. Vendored marktekfan converter handles every format. Metadata normalizer handles both Penpa-style (cages-as-metadata) and SudokuPad-style (top-level metadata object).
  • Library page with Importer, Raw, Testing, and (admin-only) Queue tabs. Status flow: raw → testing → pending_publish → published.
  • Solver-facing /feed of published puzzles with favourite hearts (♥) that persist per user.
  • Per-user /dashboard with status counts and recent puzzles. /profile with favourites and published works (unfinished + history sections wire up when the solver ships).
  • /settings for username and password changes (re-auth required for password changes).
  • Auth: signup, login, password reset, post-login redirect to /dashboard.
  • Privacy commitment locked in: email only, no marketing email, promo content stays in-app.
  • Public pages: /, /about, /privacy, /terms, /changelog.