Commit Graph
90 Commits
Author SHA1 Message Date
Raven Scott 267e8d6fc2 Restore last registry browser context on Registry load
Release rolling / release (push) Has been cancelled
Remember credential, host, and last repo in settings; auto-apply
session auth and refresh catalog when opening the Registry view.
2026-07-17 19:29:11 -04:00
Raven Scott 5b8fb142bb Add experimental server alerts and webhook notifications
Release rolling / release (push) Successful in 7m30s
Server-side alerting for Docker/container/stack health with Discord,
Slack, Teams, ntfy, Gotify, Telegram, and generic webhooks. Settings
tab, client cache, and backup/restore coverage; marked experimental.
2026-07-17 18:10:43 -04:00
Raven Scott 366333e6bd Complete client backup and restore coverage
Release rolling / release (push) Successful in 7m33s
Include identity, backup policy, and notifications by default; deep-merge
nested settings; rehydrate UI/peers/filters after restore.
2026-07-17 17:48:08 -04:00
Raven Scott ec96356855 Persist remaining client state in disk cache files
Release rolling / release (push) Has been cancelled
Move templates, notifications, backups, table columns, peer envs, and
sidebar/first-connect prefs onto ~/.config/peardock/cache (settings.json
or dedicated JSON files) with legacy localStorage migration.
2026-07-17 17:41:11 -04:00
Raven Scott 9da9345e32 Persist container filters in settings cache file
Release rolling / release (push) Successful in 7m26s
Store search/status/sort under settings.containerFilters in
~/.config/peardock/cache/settings.json so preferences survive restarts,
and migrate the old localStorage key once.
2026-07-17 17:28:50 -04:00
Raven Scott abc34b39d8 Restore and restart origin container when swap deploy fails
Release rolling / release (push) Successful in 8m45s
On duplicate/swap failure after parking, rename the origin back and start
it if it was running so a bad deploy does not leave the source offline.
2026-07-16 22:26:22 -04:00
Raven Scott bd512df950 Park source container on duplicate so host ports can be reused
Release rolling / release (push) Has been cancelled
When duplicating with the same host ports, stop+rename the origin, deploy
and verify the new container, then remove the parked source. Client
precheck ignores ports owned only by the origin to avoid false blocks.
2026-07-16 22:24:49 -04:00
Raven Scott 01a62f292d Match Pear titlebar chrome in Electron client builds
Release rolling / release (push) Successful in 8m10s
Hide the native window frame (hiddenInset on macOS, frameless elsewhere) and polyfill pear-ctrl so the integrated titlebar matches the Pear dev shell.
2026-07-16 19:30:43 -04:00
Raven Scott 461a5498f9 Fix boot active-server selection and titlebar peer chip
Release rolling / release (push) Successful in 8m49s
Stop overwriting the header on every parallel restore connect; wait for
the last-used peer before falling back; avoid persisting temporary
active selection so the remembered server stays correct across restarts.
2026-07-16 19:20:02 -04:00
Raven Scott 3a2534c11c Fix light-mode terminal init blanking until theme toggle
Release rolling / release (push) Has been cancelled
Fill the details terminal host for FitAddon, wait for a measurable box
before starting the PTY, re-apply xterm palettes after open, and re-fit
on UI color-mode changes so light sessions paint without a dark/light flip.
2026-07-16 19:16:21 -04:00
Raven Scott f8ad7d5b6e Persist client settings to ~/.config/peardock/cache/settings.json
Release rolling / release (push) Successful in 7m50s
Store theme, density, and other prefs in a versioned JSON cache file
(matching peers.json) instead of localStorage-only, with migration and
a localStorage mirror for FOUC and legacy readers.
2026-07-16 18:52:57 -04:00
Raven Scott 4a652da0c5 Persist UI color theme across client restarts
Release rolling / release (push) Successful in 12m48s
The Electron GUI bundle was stale and never wrote theme from Settings.
Rebuild path already includes applyColorTheme on load/save; also write
theme to localStorage immediately when Color mode changes so boot FOUC
and applySettings restore light/dark correctly.
2026-07-16 18:23:07 -04:00
Raven Scott 0f59f01cf8 Polish light theme surfaces and add Jobs tray settings
Release rolling / release (push) Successful in 8m23s
Expand light-mode CSS for dashboard, details, terminals, job/pull progress, restoring boot card, and settings chrome. Add a Jobs tray settings tab for dismiss timing and reconnect feedback volume; auto terminal themes follow UI color mode when saved.
2026-07-16 17:33:23 -04:00
Raven Scott 18897bdcc3 Don't block boot on failed peer dials; add Fleet reconnect after max retries
Release rolling / release (push) Successful in 8m7s
Launch finishes as soon as any peer comes online; offline dials notify the tray and keep retrying in the background. Fleet cards that hit max reconnect tries show a clear Reconnect button that resets the retry budget.
2026-07-16 17:06:52 -04:00
Raven Scott 3a3df4ec10 Add light mode theme setting and remove offline banner
Release rolling / release (push) Has been cancelled
Dark remains default; users can pick light or match system under Settings → Appearance. Drop the full-height connection-lost banner that stretched across the window.
2026-07-16 17:03:08 -04:00
Raven Scott f72a1d0a41 Keep offline peers on Fleet and add max reconnect tries setting
Release rolling / release (push) Successful in 8m50s
Fleet builds a roster from configured peers so hosts stay visible when
they drop (online / reconnecting / failed / offline). Settings → Behavior
adds max reconnect tries (1–8 or unlimited, default 8) wired into
ConnectionManager, with Retry connect to redial after the budget is spent.
2026-07-16 16:37:19 -04:00
Raven Scott 4460f61f85 Add backups
Release rolling / release (push) Has been cancelled
2026-07-16 16:24:38 -04:00
Raven Scott 301902c470 Redesign restoring-connections boot screen with app spinner
Release rolling / release (push) Successful in 8m30s
Replace Bootstrap spinner with the tray job-spinner, a modern card layout,
live status pill, and peer restore progress bar.
2026-07-16 15:41:07 -04:00
Raven Scott fbe1751468 Polish modals and add settings save button feedback
Release rolling / release (push) Has been cancelled
Replace stock Bootstrap modal chrome with a dark teal panel system, and
give Settings Save all a Saving… / Saved state with motion-aware styles.
2026-07-16 15:38:29 -04:00
Raven Scott 2b1b40e967 Harmonize filter and toolbar button colors with dark teal UI
Release rolling / release (push) Has been cancelled
Replace solid green/yellow image filter fills with a segmented control,
move Prune to secondary outline, and soften warning/secondary button styles.
2026-07-16 15:31:42 -04:00
Raven Scott 218e924c67 Disable Swarm nav when Docker is not swarming
Release rolling / release (push) Successful in 11m22s
Grey out the Swarm sidebar item with a help popover explaining how to
enable swarm mode. Recheck the peer on each hover and re-enable the
nav when LocalNodeState becomes active.
2026-07-16 15:13:22 -04:00
Raven Scott 83353602df Fix Images actions column clipping remove button
Release rolling / release (push) Has been cancelled
Widen the actions column and keep button groups visible so the
remove control is not cut off under fixed table layout.
2026-07-16 15:08:02 -04:00
Raven Scott 60315d53f0 Add show/hide columns picker and hide table horizontal scroll
Release rolling / release (push) Successful in 7m47s
Reusable column visibility control after Clear on containers and on
other resource tables, with preferences persisted. Suppress horizontal
scrollbars so columns ellipsize instead of overflowing.
2026-07-16 14:53:54 -04:00
Raven Scott 5b1acdf324 Use tray spinner for pending UI loading states
Release rolling / release (push) Has been cancelled
Replace em-dash and ad-hoc loaders with the shared job-tray spinner
for deploy templates, host/swarm/tunnels/events, health latency,
container stats/logs/processes, and registry/volume browsers.
2026-07-16 14:30:59 -04:00
Raven Scott 06de0b5c81 Fix Details Header Deformation
Release rolling / release (push) Has been cancelled
2026-07-16 14:21:23 -04:00
Raven Scott 2663464fcb Ensure design responsiveness
Release rolling / release (push) Successful in 8m34s
2026-07-16 13:49:40 -04:00
Raven Scott 658bc1ee59 Fix Settings Save All Button Placement
Release rolling / release (push) Successful in 7m58s
2026-07-16 05:06:49 -04:00
Raven Scott 2c35f5cb82 Job Tray Updates
Release rolling / release (push) Successful in 9m12s
2026-07-16 04:20:26 -04:00
Raven Scott 6866e83439 Stack Deploy UI
Release rolling / release (push) Has been cancelled
2026-07-16 04:15:43 -04:00
Raven Scott 223c7118c9 Tray Polish
Release rolling / release (push) Has been cancelled
2026-07-16 03:58:28 -04:00
Raven Scott bc6bd8eda3 Tray Updates Image Pulls
Release rolling / release (push) Has been cancelled
2026-07-16 03:55:43 -04:00
Raven Scott ac10747bad Add global hidden-container filters by label in Settings.
Release rolling / release (push) Successful in 9m7s
2026-07-16 01:57:43 -04:00
Raven Scott 882072b30b Truncate long deploy template descriptions so Deploy stays on-screen.
Release rolling / release (push) Successful in 9m13s
2026-07-16 01:10:00 -04:00
Raven Scott 2153cdbbde Fix table checkbox ellipsis and style selection checkboxes.
Release rolling / release (push) Successful in 8m43s
2026-07-15 23:05:47 -04:00
Raven Scott 9775fe5305 Move Peers into Settings and add a full Registry browser tab.
Release rolling / release (push) Successful in 9m39s
Peers live under Settings; Images is local-only. Registry is a top-level view with vault credentials, Hub search, and Registry API V2 catalog/tags/manifest/delete over the wire.
2026-07-15 16:04:27 -04:00
Raven Scott 53e6dd8853 Update
Release rolling / release (push) Has been cancelled
2026-07-15 15:08:55 -04:00
Raven Scott a6925d337e Add container image update indicators.
Release rolling / release (push) Has been cancelled
Compare local RepoDigests to remote registry manifest digests, show status in the containers table Updates column, and support force recheck with vault credentials for private registries.
2026-07-15 15:05:04 -04:00
Raven Scott b185ea7a55 Add container create page from the containers list with always-pull.
Release rolling / release (push) Successful in 8m24s
Adds a dedicated blank create form (name, image, always pull, ports,
auto-remove, advanced settings) separate from template Deploy, reuses
deployContainer with pull-if-missing and publish-all-ports support.
2026-07-15 14:27:05 -04:00
Raven Scott 1cb85e2cee changes to jobs trey
Release rolling / release (push) Successful in 8m23s
2026-07-15 00:08:43 -04:00
Raven Scott 2ae6f074cb fixes
Release rolling / release (push) Successful in 9m2s
2026-07-14 23:52:46 -04:00
Raven Scott f4a97aad2a Move away from Autopass for AlmaLInux Compatibility
Release rolling / release (push) Successful in 8m18s
2026-07-14 22:19:33 -04:00
Raven Scott ecafa4f22a updates
Release rolling / release (push) Has been cancelled
2026-07-14 20:04:49 -04:00
Raven Scott f9aa8d3c7e Add container details action bar for lifecycle operations.
Release rolling / release (push) Successful in 8m10s
Show start, stop, kill, restart, pause, resume, recreate, duplicate/edit,
and remove in the container details header, enabled by runtime state, using
typed RPC for lifecycle operations.
2026-07-13 18:37:49 -04:00
Raven Scott 5c16254ff4 Add Portainer-style container bulk actions and network manager.
Release rolling / release (push) Successful in 8m41s
Always show a containers action bar (start/stop/restart/pause/resume/kill/
recreate/remove/prune) driven by row selection via typed bulk RPC. Rebuild
the container Networking tab into a join/leave network manager with aliases
and optional static IPs, plus a clearer ports table.
2026-07-13 18:22:19 -04:00
Raven Scott 245d532efd Add Portainer-style container name replace on deploy.
Release rolling / release (push) Has been cancelled
When deploying a container whose name already exists, prompt to Replace
(stop and remove the old container) or Cancel. Server accepts replace:true
to perform the swap; clients pre-check names and retry on conflict races.
2026-07-13 18:16:54 -04:00
Raven Scott b2e04caabc Add advanced container stats tab with timeframes and I/O charts.
Release rolling / release (push) Has been cancelled
Expand server history samples with network/block rates and longer
retention, and rebuild the details Stats tab with live KPIs, 1m–30m
windows, auto-scale, pause, CSV export, and CPU/memory/net/disk charts.
2026-07-13 18:13:27 -04:00
Raven Scott ac754d6f5a Polish container overview layout for filled height without empty voids.
Release rolling / release (push) Has been cancelled
Split overview into a stretching Identity/Runtime/Network band and a
content-height Ports/Mounts/Timeline strip with timeline, mount rows,
and clearer empty states so vertical space is used without sparse panels.
2026-07-13 17:41:19 -04:00
Raven Scott c85324867e Stretch container overview panels to fill remaining viewport height.
Release rolling / release (push) Has been cancelled
Make the overview tab body, card, and section grid grow with the details
shell so Identity/Runtime/Network and related panels use empty vertical
space instead of sitting in a short content-sized block.
2026-07-13 17:38:53 -04:00
Raven Scott 9680437fab Improve container details UX, dashboard shortcuts, and RPC rate limits.
Release rolling / release (push) Successful in 8m38s
Tighten container detail tabs into a fit-to-viewport layout with a richer
overview, debounced process filters, and a readable process table. Make
dashboard KPI cards navigate to resource views (with status filters that
reset on leave), and raise per-peer RPC limits so normal UI polling no
longer trips rate limiting.
2026-07-13 17:25:14 -04:00
snxraven 441781f9d6 Replace container ⋮ menu with a designed actions modal
Release rolling / release (push) Successful in 8m24s
Row more-button opens containerActionsModal with lifecycle, manage, and
danger-zone actions instead of a fragile context/dropdown menu.
2026-07-11 22:23:58 -04:00