feat(ui): three-page console SPA on @unom/ui + the kit's react helpers
CI / build (push) Successful in 31s
CI / exporter (push) Successful in 12s
CI / publish (push) Successful in 22s

Overview (exporter health, Playnite version, counts, sync, live SSE activity,
and a first-run panel that names the exact ingest path the .pext writes to),
Library (covers + per-game include toggles + why-not-synced), Settings
(filters, art delivery, sync cadence, paths).

Data layer is AtomHttpApi atoms derived from the shared contract; the whole
thing runs with zero host against an in-browser mock transport with four
scenarios, and Storybook renders the real pages on the same fixtures. CI now
asserts the production bundle carries no fixture strings.

Also: CI rebuilt for the workspace layout (one root install, per-package
typecheck, publish from plugin/ on a v* tag) with the exporter job and
`publish: needs [build, exporter]` unchanged; README rewritten around the three
workspaces, with the ingest inbox explained as the load-bearing mechanism it is.
This commit is contained in:
2026-07-20 21:05:04 +02:00
parent b81e03685a
commit e8acf922de
33 changed files with 2328 additions and 46 deletions
+1 -1
View File
@@ -17,7 +17,7 @@ On startup, on every `OnLibraryUpdated`, and (debounced) on any per-game add/upd
%APPDATA%\Playnite\ExtensionsData\<plugin-guid>\punktfunk-library.json
```
Shape (kept in lockstep with `../src/export-schema.ts`):
Shape (kept in lockstep with `../contract/src/export.ts`):
```jsonc
{