feat: the redesigned Event Clock

The new reader app replaces the old UI: Checklist with a rail (focus
pills, Next to expire, today's dailies, pinned routines), Timeline in a
new and a classic look, Routines, Archive and a Settings area, in a
Structured (default) and a Relaxed interface. It follows the approved
Round 6 B and Round 7 mockups, corrected screen by screen with the owner.

Reader data moves to a v2 store (gacha-tracker:v2:*). Existing v1 data
is migrated on first load, a recovery copy is written first, and the v1
keys are never removed, so a rollback finds them unchanged. Redeem codes
for Genshin arrive as their own feed.

Also: live's urgency ramp, editable per theme; completion and
section-complete fireworks; a returning-user tour; the design mockups,
specs, plans, reviews and handoff record.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Lucas WintherandClaude Opus 5.5 committed 2026-10-18 01:55:16 +02:00
1 parent ddd9673f86
commit 50c6e91b00
284 files changed
+45100 -1628

No files matched your search

@@ -0,0 +1,82 @@
[
{
"id": "[\"genshin\",\"NEEIJB764CA3\"]",
"game": "genshin",
"code": "NEEIJB764CA3",
"reward": "Primogem x60 Adventurer's Experience x5",
"expiresAt": null,
"sourceUrl": "https://game8.co/games/Genshin-Impact/archives/304759"
},
{
"id": "[\"genshin\",\"6LS3F3LS5K87\"]",
"game": "genshin",
"code": "6LS3F3LS5K87",
"reward": "Primogem x20 Geode of Replication x60",
"expiresAt": null,
"sourceUrl": "https://game8.co/games/Genshin-Impact/archives/304759"
},
{
"id": "[\"genshin\",\"OPERACOLLAB\"]",
"game": "genshin",
"code": "OPERACOLLAB",
"reward": "Primogem x30 Mora x20,000 Hero's Wit x2",
"expiresAt": null,
"sourceUrl": "https://game8.co/games/Genshin-Impact/archives/304759"
},
{
"id": "[\"genshin\",\"VesnaOnPatrol\"]",
"game": "genshin",
"code": "VesnaOnPatrol",
"reward": "Primogem x40 Mora x20,000 Hero's Wit x3",
"expiresAt": null,
"sourceUrl": "https://game8.co/games/Genshin-Impact/archives/304759"
},
{
"id": "[\"genshin\",\"EPIC2026\"]",
"game": "genshin",
"code": "EPIC2026",
"reward": "Primogem x40 Mora x20,000 Hero's Wit x5",
"expiresAt": null,
"sourceUrl": "https://game8.co/games/Genshin-Impact/archives/304759"
},
{
"id": "[\"genshin\",\"Y6JYMKV6JKSL\"]",
"game": "genshin",
"code": "Y6JYMKV6JKSL",
"reward": "Primogem x60 Adventurer's Experience x5",
"expiresAt": null,
"sourceUrl": "https://game8.co/games/Genshin-Impact/archives/304759"
},
{
"id": "[\"genshin\",\"Y1INABQB6DEX\"]",
"game": "genshin",
"code": "Y1INABQB6DEX",
"reward": "Primogem x60 Adventurer's Experience x5",
"expiresAt": null,
"sourceUrl": "https://game8.co/games/Genshin-Impact/archives/304759"
},
{
"id": "[\"genshin\",\"2BJ64QRZ7RT8\"]",
"game": "genshin",
"code": "2BJ64QRZ7RT8",
"reward": "Primogem x60 Adventurer's Experience x5",
"expiresAt": null,
"sourceUrl": "https://game8.co/games/Genshin-Impact/archives/304759"
},
{
"id": "[\"genshin\",\"PLDXIB886Y1S\"]",
"game": "genshin",
"code": "PLDXIB886Y1S",
"reward": "Mora x10000 Adventurer's Experience x10 Fine Enhancement Ore x5 Stir-Fried Fish Noodles x5 Jueyun Chili Chicken x5",
"expiresAt": null,
"sourceUrl": "https://game8.co/games/Genshin-Impact/archives/304759"
},
{
"id": "[\"genshin\",\"GENSHINGIFT\"]",
"game": "genshin",
"code": "GENSHINGIFT",
"reward": "Primogem x50 Hero's Wit x3",
"expiresAt": null,
"sourceUrl": "https://game8.co/games/Genshin-Impact/archives/304759"
}
]
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,12 @@
{
"sourceId": "genshin-game8-codes",
"url": "https://game8.co/games/Genshin-Impact/archives/304759",
"contentHash": "14e97c995dbad078c2b9b10f10251f4272f06d3428cbf68977894db03aecfea1",
"bytes": 373038,
"etag": null,
"lastModified": null,
"contentChangedAt": "2026-10-16T11:48:08.968Z",
"lastConfirmedAt": "2026-10-16T11:48:08.968Z",
"eventCount": 10,
"charset": "utf-8"
}