Commit Graph
73 Commits
Author SHA1 Message Date
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 573298b836 Fix peer cache wipe on quit and polish collapsed sidebar rail.
CI / test (push) Successful in 9m54s
Close sockets on unload without forgetting saved peers, merge roster
writes so empty in-memory state cannot erase peers.json, and restyle the
minimized sidebar as a clean icon-only rail with compact peer dots.
2026-07-10 22:43:33 -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 3b3336fbde Make dashboard fit the viewport without outer scroll
CI / test (push) Successful in 9m52s
Restructure the dashboard into a height-contained grid so stats, panels, and actions fill the content pane; only individual cards scroll when their content is long.
2026-07-10 22:05:27 -04:00
snxraven 0d477a2e9e Dock peers footer to bottom so nav never scrolls with peers
CI / test (push) Successful in 9m53s
Stop whole-sidebar scrolling; only the nav region scrolls. Peers live in a fixed sidebar footer that grows up to four rows then scrolls on its own.
2026-07-10 22:03:19 -04:00
snxraven 39af74640c Fix dashboard overflow; pin peer list to bottom with 4-row scroll
CI / test (push) Successful in 10m2s
Contain dashboard layout so views scroll inside the content pane without horizontal bleed, wrap long system values, and keep the peers panel bottom-sticky growing up to four rows before scrolling.
2026-07-10 22:01:50 -04:00
snxraven 606e5443ce Fix peer row layout and volumes RPC handler crash
CI / test (push) Successful in 9m55s
Keep peer action buttons from overflowing with stable truncation and short labels, move reset peers into Settings with an infinitely scrollable peer list, and harden waitForPeerResponse so success replies without a message (listVolumes) no longer throw.
2026-07-10 21:58:37 -04:00
snxraven 5d3342fe4f Persist peers across restarts; move connect form to modal
CI / test (push) Successful in 9m55s
Always store configured connections in localStorage (with invite/alias), restore and re-dial on boot, and free the sidebar so every nav item stays reachable via a scrollable nav plus an Add peer modal.
2026-07-10 21:53:28 -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 db5d411089 Improve deploy UX and dark-theme text contrast
CI / test (push) Successful in 9m55s
Debounce template search, harden deploy/duplicate/template flows with
reliable RPC and better form controls (switches/sliders). Raise muted
and secondary text contrast across styles so copy stays readable.
2026-07-10 21:28:01 -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
Raven Scott 0bb6ba1692 breaking
CI / test (push) Successful in 9m56s
2026-07-10 20:36:11 -04:00