Si tracks his daily Yudoku (sudoku, played in the YuLife app) sessions on his
blog at /habits/sudoku/, part of the combined /habits/ section. When he
shares a screenshot of the Yudoku results screen, extract the day's data and
append it to _data/habits/sudoku.json - do not just describe the numbers back.
A results screen titled "Yudoku" with a YuCoin reward card, "Great work! /
Come back tomorrow for a new round.", and a stats list:
The phone status bar at the top shows the current clock time (e.g. "18:05").
Only four fields matter, matching the schema already used in_data/habits/sudoku.json:
| Field | Source | Format |
|---|---|---|
date | Not on screen - use today's date (the date this screenshot was sent/saved) | YYYY-MM-DD |
time | Status bar clock at the top of the screenshot | HH:MM, 24-hour |
durationSeconds | "Today's time" row, converted | integer seconds (e.g. "3m 45s" → 225) |
mistakes | "Mistakes" row | integer |
Ignore Personal best, Hints, and Reward/YuCoin entirely - they're shown on
screen but intentionally not part of this log.
_data/habits/sudoku.json.entries array with the four fieldsdate already exists, ask Si whether to overwrite it rather than silentlynpx eleventy (ornpm run build) to sanity-check the JSON is valid and the page builds, butLog sudoku session for 2026-08-01 is enough. Don't ask forThis skill is specifically for the Yudoku results screen going intosudoku.json. If Si shares a screenshot for a habit that isn't sudoku (e.g. a
fitness app), don't force the data into sudoku.json. Instead follow the same
shape:
_data/habits/<slug>.json with id, name, icon, source,description, primaryMetric (key/label/unit/goal), optionallysecondaryMetric, and an entries array - copy the structure from_data/habits/sudoku.json.src/pages/habits/sudoku.njk to src/pages/habits/<slug>.njk,"sudoku" | getHabit slug and the page title/description.Nothing else needs to change - /habits/ and its shared table/chart
rendering (_11ty/habits.js, _11ty/habits-data.js) already work generically
off whatever habit JSON files exist in _data/habits/.