Phase 2 — Full web app, admin UI, generators, and 31 bug fixes #1

Merged
TimCane merged 66 commits from phase-2 into main 2026-05-04 22:16:43 +01:00
TimCane commented 2026-05-04 22:13:23 +01:00 (Migrated from github.com)

Summary

Complete implementation of the home-display web application: server, admin UI, canvas editor, generator framework, and resolution of all 31 tracked issues.

Core platform (Steps 1–22)

  • Dev container, Dockerfile, Postgres + Drizzle ORM
  • tRPC API with OAuth auth, session management
  • Push delivery pipeline with health checks and scheduler
  • Draft system with guest editor links + QR codes
  • Desktop & mobile canvas editors (layers, icons, text, shapes)
  • Built-in generators: weather, calendar, holiday-weather (new)
  • React admin shell with dashboard, entries, drafts, generators, diagnostics
  • CI + deploy configuration

Bug fixes & improvements (Issues 001–031)

  • Critical fixes: Docker migrations, red/yellow colour swap, node-ical crash, fetch timeouts, graceful shutdown, cron validation, request body limits
  • Performance: N+1 query fix, missing DB indexes, pagination, connection pool config, status history pruning
  • UI/UX: Icon picker with Lucide SVG rendering, auto-fit text in layers, hover previews, responsive tables, confirm dialogs, unsaved-changes warning, checkbox accessibility
  • Code quality: ESLint + Prettier, structured logging, extracted cookie utility, integration tests (101 total)

Generator visual redesign

  • Polished e-ink renderers: coloured header bars, filled-silhouette weather icons, area charts, time-badge pills, rounded cards with temperature comparison bars
  • New holiday-weather plugin: card grid of upcoming trips with forecasts or countdowns

Test plan

  • npx tsc --noEmit passes for both server and client
  • npx vitest run — 101 tests pass
  • Create a holiday-weather generator instance and verify card rendering
  • Verify weather/calendar generators produce polished output
  • Test pagination on entries/drafts pages
  • Test editor unsaved-changes warning
## Summary Complete implementation of the home-display web application: server, admin UI, canvas editor, generator framework, and resolution of all 31 tracked issues. ### Core platform (Steps 1–22) - Dev container, Dockerfile, Postgres + Drizzle ORM - tRPC API with OAuth auth, session management - Push delivery pipeline with health checks and scheduler - Draft system with guest editor links + QR codes - Desktop & mobile canvas editors (layers, icons, text, shapes) - Built-in generators: weather, calendar, **holiday-weather** (new) - React admin shell with dashboard, entries, drafts, generators, diagnostics - CI + deploy configuration ### Bug fixes & improvements (Issues 001–031) - **Critical fixes:** Docker migrations, red/yellow colour swap, node-ical crash, fetch timeouts, graceful shutdown, cron validation, request body limits - **Performance:** N+1 query fix, missing DB indexes, pagination, connection pool config, status history pruning - **UI/UX:** Icon picker with Lucide SVG rendering, auto-fit text in layers, hover previews, responsive tables, confirm dialogs, unsaved-changes warning, checkbox accessibility - **Code quality:** ESLint + Prettier, structured logging, extracted cookie utility, integration tests (101 total) ### Generator visual redesign - Polished e-ink renderers: coloured header bars, filled-silhouette weather icons, area charts, time-badge pills, rounded cards with temperature comparison bars - New **holiday-weather** plugin: card grid of upcoming trips with forecasts or countdowns ## Test plan - [x] `npx tsc --noEmit` passes for both server and client - [x] `npx vitest run` — 101 tests pass - [x] Create a holiday-weather generator instance and verify card rendering - [x] Verify weather/calendar generators produce polished output - [x] Test pagination on entries/drafts pages - [x] Test editor unsaved-changes warning
Sign in to join this conversation.
No description provided.