Commit Graph
31 Commits
Author SHA1 Message Date
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 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 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 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 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 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 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 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 42a69c6dc7 Ship Track G UX, multi-shell terminals, Swarm default-on, install.peardock.boats
Release rolling / release (push) Successful in 8m22s
Probe bash/sh/ash and related shells until a container terminal works, enable Swarm APIs by default, add keyboard go-chords and appearance prefs, and point install docs at https://install.peardock.boats.
2026-07-11 18:06:46 -04:00
Raven Scott 54c09b5eab Retry peer reconnect every 5s until back online
Release rolling / release (push) Has been cancelled
Replace exponential backoff and the 12-attempt cap with a fixed 5s
retry loop that keeps dialing after unexpected disconnects. Throttle
toasts so the UI is not spammed while the offline banner stays up.
2026-07-11 17:19:09 -04:00
Raven Scott 7ca939f7a9 Reduce list flicker across images, networks, volumes, stacks, tunnels, swarm
Release rolling / release (push) Successful in 8m32s
Skip skeleton wipes when data already exists, fingerprint list content so
auto-refresh does not rebuild unchanged DOM, and short-circuit container
structure updates when only live stats change.
2026-07-11 16:23:27 -04:00
snxraven 3edf61bd9c Move peer list into dedicated Peers sidebar tab
CI / test (push) Has been cancelled
Keep quick Add peer (and Peers shortcut) in the sidebar footer; full
saved-peer list, counts, and actions live on a new Peers view that is
reachable offline for managing keys.
2026-07-10 23:55:36 -04:00
snxraven 2b6cfc644f Complete Track F optional Docker/Portainer ops items
CI / test (push) Successful in 10m2s
Implement volume browse, stack env file, service scale, create
secret/config, disconnect network, registry Hub search, server
schedules, resource editor, and fleet environment tags. Mark roadmap
Tracks A–F complete.
2026-07-10 23:52:26 -04:00
snxraven b62bcd697e Track E: recreate, system prune, Hub search, swarm secrets/configs
CI / test (push) Successful in 10m3s
Investigate Docker/Portainer gaps and ship high-value ops: recreate
container, system prune + builder prune UI, Docker Hub search in
pull modal, Swarm secrets/configs tables. Update roadmap Track E/F.
2026-07-10 23:48:30 -04:00
snxraven 869ba6a932 Expand Settings into categorized subtabs with full client prefs
CI / test (push) Successful in 10m6s
Add Appearance, Behavior, Notifications, Tunnels, Templates,
Connections, Terminal, and About panels. Wire density, sidebar,
confirmations, refresh, badge mode, toasts, tunnel defaults,
template lists, peer reset, terminal themes, and read-only server
feature flags into peardock.settings.v1.
2026-07-10 23:45:11 -04:00
snxraven 74cd2f4a2e Idempotent tunnel create: reuse existing, block UI double-submit
CI / test (push) Successful in 10m5s
Return the active tunnel for the same host:port:protocol instead of
starting a second Holesail instance; coalesce concurrent creates.
UI disables the create button and shows “already exists” feedback.
2026-07-10 23:28:07 -04:00
snxraven 5fbece2bd9 Fix Holesail client connect via Bare main HTTP control
CI / test (push) Successful in 9m58s
pear-run worker RPC timed out from the Electron UI. Run real holesail
in Bare index.js (holesailBareControl) and have the UI call localhost
HTTP instead of loading bare-tcp in the renderer.
2026-07-10 23:19:31 -04:00
snxraven cc6df798e1 Run real holesail in a Bare worker for Pear UI
CI / test (push) Successful in 9m59s
pear-electron cannot load bare-tcp (require.addon) in the renderer.
Use pear-run + workers/holesail-local.cjs so the actual holesail package
runs under Bare; Node still loads holesail in-process. Add connect
fallback modal with copy URL.
2026-07-10 23:13:30 -04:00
snxraven 9e39c27b88 Fix Pear Holesail client createRequire crash; polish confirm modals
CI / test (push) Successful in 9m59s
Load holesail via dynamic ESM import (no createRequire) so Pear can connect local tunnels. Route confirmations through a designed modal with icons and animations instead of native dialogs.
2026-07-10 23:03:21 -04:00
snxraven 244ff569f5 Enable Holesail tunnels by default; keep holesail as required dep
CI / test (push) Successful in 9m59s
Holesail is on unless ENABLE_HOLESAIL=0/false/off. The holesail package remains a required dependency; docs and UI copy match the new default.
2026-07-10 22:56:17 -04:00
snxraven 02f25e0981 Complete roadmap optionals: Holesail, Swarm UI, GitOps, virtualization.
CI / test (push) Successful in 9m58s
Add tunnel persistence and container one-click tunnels with local
Holesail client bind, Swarm services/nodes/tasks view, GitOps stack
sync from git, deploy wizard step chrome, virtualized container lists,
and structure regression tests. Mark Tracks A–D and optional future done.
2026-07-10 22:53:30 -04:00
snxraven 1b99224f16 Improve deploy errors and use bottom job tray as sole feedback.
CI / test (push) Successful in 9m56s
Map Docker deploy failures to actionable how-to-fix messages, keep full
detail through RPC sanitization, and stop top-center toasts from doubling
the live job tray so operators only see one notification per action.
2026-07-10 22:40:13 -04:00
snxraven a42f5e4dcf Complete Track C roadmap: dashboard, job follow, actions, activity, roles
CI / test (push) Successful in 9m55s
Ship the modern dashboard, job tray log follow, container overflow actions, stacks search, activity history, role-gated controls, invite form with copy token, first-connect checklist, and mark Track C done on the roadmap.
2026-07-10 22:31:16 -04:00
snxraven 2d8b24ec0e Support multiple deploy template list URLs with cross-list dedupe
CI / test (push) Successful in 9m55s
Add Settings UI to configure many Portainer-format template catalogs (not just one), merge them on fetch, drop duplicates by image/stack/title, and show source counts on the Deploy view.
2026-07-10 22:19:46 -04:00
snxraven 60816ed78b Persist peers to disk cache and stop Request failed spam
CI / test (push) Successful in 9m57s
Save configured connections to ~/.config/peardock/cache/peers.json (with localStorage migration), unwrap protomux REQUEST_ERROR causes for real messages, and quiet/dedupe background RPC failures so the notification tray is not flooded.
2026-07-10 22:16:28 -04:00
snxraven 4063c83597 Ship Track C UX polish: toasts, settings, lists, navigation
CI / test (push) Successful in 9m55s
Add a visible toast stack, fix presentError double-notify, wire density and auto-refresh settings, gate destructive confirms, improve empty/skeleton/search on resource lists, and enable browser history plus keyboard palette navigation.
2026-07-10 22:10:40 -04:00
snxraven 2cccb8a04e Fix titlebar pear-ctrl overlap; route status into job tray
CI / test (push) Successful in 9m53s
Reserve space for window controls and split the titlebar clusters so brand and chrome no longer collide. Replace the full-screen status spinner with lightweight activity jobs in the event tray.
2026-07-10 21:48:11 -04:00
snxraven 77f49beda3 Harden terminals and logs; polish deploy job drawer
CI / test (push) Successful in 9m56s
Production-grade xterm FitAddon resize, binary-safe I/O, TTY-safe
server streams, demuxed log viewer with line buffering, and auto-dismiss
deploy job panel without the full-screen spinner.
2026-07-10 21:34:51 -04:00
snxraven 53c8040020 Ship Track B UI: smart defaults, ops shell, deploy stepper
CI / test (push) Successful in 9m53s
Add host snapshot and network IPAM suggestions, image-driven form
hydration, command palette, Host/Events/Settings views, offline banner,
job drawer for deploy steps, and typed RPC errors. Mark roadmap complete.
2026-07-10 21:17:04 -04:00