Skip to content

feat: project-centric dashboard with site management + Mailpit - #2

Merged
kjellberg merged 1 commit into
mainfrom
feat/project-centric-dashboard
Jun 10, 2026
Merged

feat: project-centric dashboard with site management + Mailpit#2
kjellberg merged 1 commit into
mainfrom
feat/project-centric-dashboard

Conversation

@kjellbergzoey

Copy link
Copy Markdown
Collaborator

What

Reworks Kiqr Desktop from a container-resource monitor into a sites-first control panel — matching the requested layout:

Sites
  Middagskassen
  middagskassen.lvh.me               [Open] [Stop] [Restart]
  [● WordPress running] [● Database running] [● phpMyAdmin running]
  • Sites by name + domain — read from each project's generated compose (domain, theme path, services) and its kiqr.yaml (friendly name). No UUIDs, plain language.
  • Manage deployments — Start / Stop / Restart / Open per site, and for the shared kiqr agent — all through docker compose (execFile, argv array, no shell).
  • Mailpit — the agent now knows about kiqr-mailpit; a strip shows Proxy · Splash · Mail with a one-click Open mail inbox (mail.lvh.me:5477).
  • New pure, unit-tested modules projects.ts + actions.ts; window.kiqr gains onSites / siteAction / agentAction / openUrl.
  • Retires the old agent/container cards + CPU sparklines.

Gates (all green)

lint ✅ · typecheck ✅ (node + web) · 42 tests ✅ · build ✅

Could NOT verify here (no display / no Docker daemon)

The live GUI and the real start/stop/restart actions. The discovery/parsing/command-building logic is unit-tested; please smoke-test npm run dev with Docker running and a kiqr up site active, @kjellberg.

🤖 Generated with Claude Code

Redesigns the desktop app around sites instead of raw containers:

- Sites list: each local site by friendly name + domain (read from its
  compose + kiqr.yaml), with a status badge per dependency (WordPress /
  Database / phpMyAdmin). No UUIDs, plain language.
- Manage deployments: Start / Stop / Restart / Open per site, and the same
  for the shared kiqr agent — driven through docker compose (execFile, no
  shell).
- Mailpit: the agent now includes kiqr-mailpit, with a one-click 'Open mail
  inbox' (mail.lvh.me:5477).
- New pure, tested modules: projects.ts (discovery + compose/kiqr.yaml
  parsing + status mapping) and actions.ts (docker argv builders). window.kiqr
  gains onSites / siteAction / agentAction / openUrl.

Retires the old agent/container resource cards + sparklines. README + CHANGELOG
updated.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@kjellberg
kjellberg merged commit c1cf468 into main Jun 10, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants