- Turn the Today card into a day navigator (‹/› arrows + "back to today")
so users can step back and check off a day they forgot. Editable range is
the active image's start through today; reveal recomputes from the whole
log, so backfilling a missed day re-bridges that habit's streak and paints
the pixels it earns.
- Add a Changelog tab to Settings (after About): dated release notes distilled
from the project's beans, one concise sentence each, newest first.
- Add a "Feedback? Email pop@elijah.run" line to the About tab.
Updated DESIGN.md and ARCHITECTURE.md to match. Validated with Playwright
(backfill streak-bridging 4→10px, nav bounds, changelog render) — no console
errors, no non-file:// requests.
Replace the global day-level streak + triangular(checks) multiplier
with per-habit streaks: each habit tracks its own consecutive-day
streak and reveals pixels equal to that streak length when checked.
Removes the global streak header/stat chip in favor of an inline
streak badge on each habit row.
Adds .claude/settings.json opting bit-by-bit into the frontend-design
plugin for future UI/design work on the pixel-art tracker.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Drop the pixelsPerCheck calibration constant that scaled units to a
fixed "perfect month" pace regardless of image size. 1 unit now equals
1 pixel directly (Nth check of the day reveals N pixels, multiplied by
that day's streak length), so bigger images genuinely take longer and
the numbers in the UI match what's actually happening. Also removes
the now-obsolete "~N days to finish" upload estimate and corrects the
About copy, which previously implied the streak multiplier applied
directly to pixel counts.
- Reward is now streak-multiplied: units per day = streakOnDay(d) × triangular(checks);
recalibrate pixelsPerCheck (÷ triangular(30)) and the upload finish-day estimate.
- Rename the "Backup" settings tab to "Data" and add a double-confirm "Wipe all data" action.
- Add a page footer disclosing authorship (Claude Code — Sonnet 5, Opus 4.8 & Fable 5).
- About page now explains exactly how pixels are earned (per-check escalation + streak multiplier).
- Allow uploading an image during first-run onboarding, not just presets.
- Update DESIGN.md, ARCHITECTURE.md, README.md to match.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Add Paint by Habits, a local-only single-file HTML habit tracker that
reveals a pixel-art image as daily habits are checked off.
The browser-tab icon is a 64x64 miniature of the current artwork —
revealed pixels solid, unrevealed ones a two-tone checker — drawn into
an offscreen canvas and set as a data-URL PNG, so the tab fills in with
the art and the page still makes zero network requests.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>