Commit Graph

55 Commits (44156a11af8e84f099b3cb74c951627a2d9a7c3f)

Author SHA1 Message Date
mirivlad 44156a11af docs: refresh unified tui screenshots
Complete the final task of the unified TUI shell plan, which had been left
undone: the code dropped F1 in favour of Ctrl+H, but README and the guide
still documented F1 as the full-help key in nine places, and the repository
screenshots still showed the pre-shell UI.

- Replace every F1 reference in README.md and docs/guide.md with Ctrl+H,
  including the two ASCII help blocks that mirror runtime output.
- Document the BS/DEL terminal constraint: Ctrl+H is BS (0x08) while xterm
  sends DEL (0x7F) for Backspace, so help and text editing do not collide.
- Recapture all five screenshots from the current binary in a real xterm at
  120x40, 80x24 and 60x16 using an isolated XDG profile.

Runtime verification in xterm confirms Ctrl+H opens full help while seven
Backspace presses correctly trim typed text, and that every captured screen
carries the header, framed content and bottom-anchored footer.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-18 18:33:14 +08:00
mirivlad 84070d2721 fix: harden responsive tui layouts 2026-08-14 08:11:27 +08:00
mirivlad 5e83300ea8 feat: unify tui editor screens 2026-08-14 08:02:23 +08:00
mirivlad 18d7a7c07a feat: unify tui manager screens 2026-08-14 07:58:47 +08:00
mirivlad d8ae2d4236 feat: redesign port forward screens 2026-08-14 07:54:51 +08:00
mirivlad 762d14bb9b feat: add unified tui shell and ctrl-h help 2026-08-14 07:50:13 +08:00
mirivlad 4ba2bfce34 docs: plan unified tui shell 2026-08-14 07:44:35 +08:00
mirivlad 7b5919b6c1 docs: specify unified tui shell 2026-08-14 07:43:27 +08:00
mirivlad be800de90b fix: address tui redesign review findings 2026-08-14 04:04:10 +08:00
mirivlad dac7c7d37a docs: refresh tui guide and screenshots 2026-08-14 03:47:31 +08:00
mirivlad 460b4496a0 feat: add responsive tui layouts 2026-08-14 03:42:43 +08:00
mirivlad 16f4f9937f fix: validate tui forms and protect edits 2026-08-14 03:27:41 +08:00
mirivlad 37c4fd34a9 fix: keep tui status and help context truthful 2026-08-14 03:20:42 +08:00
mirivlad 84a61d4895 fix: make tui destructive actions safe 2026-08-14 03:16:50 +08:00
mirivlad 5391612a14 docs: plan tui ux redesign 2026-08-14 03:10:39 +08:00
mirivlad 10bcc07601 fix: allow digits in port forward fields 2026-08-13 22:26:19 +08:00
mirivlad 604a4ecde2 docs: clarify platform and repository status 2026-06-06 11:14:15 +08:00
mirivlad 8e59c3052e feat: add cross-platform release packaging 2026-06-06 10:49:56 +08:00
mirivlad 48c0057d11 docs: recapture screenshots in xfce terminal 2026-06-06 10:31:52 +08:00
mirivlad 90c9f053d4 docs: align guide and screenshots 2026-06-06 03:35:24 +08:00
mirivlad f49a5b5a94 fix: store forward cli metadata 2026-06-06 03:28:21 +08:00
mirivlad 86e5bb5f0c feat: replace tui action stubs 2026-06-06 03:26:17 +08:00
mirivlad 7e0a00ff43 feat: add tunnel background cli management 2026-06-06 03:21:30 +08:00
mirivlad 6991eab3c0 fix: complete forwards and search behavior 2026-06-06 03:17:26 +08:00
mirivlad a750b85412 docs: plan partial feature completion 2026-06-06 03:13:21 +08:00
mirivlad 94e10171d2 sshkeeper: v0.2.0 stabilization — dual help screens, route icons, forward UX, tests, docs
- Split help into two modes: ? (quick hotkeys) and F1 (full documentation)
- Add visual route icons: ● direct, → via, ⇒ chain
- Forward type selector: visible radio items with descriptions
- Forward delete: confirmation dialog
- Forward list: column headers (NAME/TYPE/LISTEN/TARGET/ON)
- Footer hints on all screens show ? and F1
- Comprehensive SSH command builder tests (18 new tests)
- Fix duplicate test functions
- Update README.md: install from source as primary, fix tables, repo links
- Update docs/guide.md: split help section, fix tables, fix typos
- All tests pass, build succeeds
2026-06-05 18:19:38 +08:00
mirivlad 216af78d4d sshkeeper: add comprehensive user guide (docs/guide.md) 2026-06-05 15:42:27 +08:00
mirivlad 087d7ba0dc sshkeeper: fix 4 UX issues
1. Forward type selector: visible radio items (1.Local 2.Remote 3.SOCKS) with descriptions
2. Forward list: column header row (NAME/TYPE/LISTEN/TARGET/ON)
3. Forward delete: confirmation dialog before deletion
4. Server route column: → icon for via/chain, spaces for direct
2026-06-05 10:00:22 +08:00
mirivlad 6cf281c349 sshkeeper: complete port forwarding UX redesign
- Forward form: type selector (Local/Remote/SOCKS) with radio items
- Dynamic fields: listen addr/port, target addr/port based on type
- Default listen: 127.0.0.1, warning for 0.0.0.0
- Forward list: table view NAME/TYPE/LISTEN/TARGET/ENABLED
- Forward edit: Enter/Ctrl+E opens pre-filled edit form
- Human explanation and OpenSSH preview for selected forward
- Tunnel state manager: PID tracking, start/stop, state file
- Tunnel manager screen: list running tunnels, stop, refresh
- Action menu: Connect/Connect with tunnels/Start tunnels only/Start tunnels in background/Manage port forwards/Manage tunnels/Manage route/Test/Edit/Delete
- Help screen: updated shortcuts
- CLI: tunnel --background for detached tunnel process
- README: updated with forward vs tunnel examples, new hotkeys
2026-06-03 18:27:05 +08:00
mirivlad 4726a6874c sshkeeper: redesign port forwarding UX
- Forward model: add Name, Description, Enabled fields
- DB migration 003: add name/description/enabled columns to forwards
- Forward type: radio selector (Local/Remote/SOCKS) instead of free text
- Forward form: dynamic fields based on type, 127.0.0.1 default, 0.0.0.0 warning
- Forward list: table view with NAME/TYPE/LISTEN/TARGET/ENABLED columns
- Forward edit: Enter/Ctrl+E opens edit form
- Human explanation and OpenSSH preview for selected forward
- Tunnel state manager: PID tracking, start/stop, state file
- Tunnel manager screen: list running tunnels, stop, refresh
- Action menu: reworked with Connect/Connect with tunnels/Start tunnels only/Start tunnels in background/Manage port forwards/Manage tunnels/Manage route/Test/Edit/Delete
- Help screen: updated with all shortcuts
- CLI: tunnel --background for detached tunnel process
- Default listen address: 127.0.0.1 instead of 0.0.0.0
- Validation: type required, ports 1-65535, target required for local/remote
2026-06-03 18:15:31 +08:00
mirivlad 741e9a836d shkeeper: simplify action bar (Enter/Ctrl+X/Ctrl+A/Ctrl+E/Ctrl+F/Ins/?/Ctrl+Q), move rest to help screen 2026-06-03 16:08:22 +08:00
mirivlad fa9b07e3d5 sshkeeper: add build.sh and release.sh scripts 2026-06-03 15:09:32 +08:00
mirivlad 709a317939 sshkeeper: fix forward save flow (saveDoneMsg handling) + tests 2026-06-03 12:37:39 +08:00
mirivlad 77a84a487f sshkeeper: v0.2.0 stabilization (route display, forward validation, tunnel UX, README) 2026-06-03 11:23:02 +08:00
mirivlad 21444d3826 sshkeeper: fix migration - route_hops via ensureSchema() to avoid duplicate column error 2026-06-03 10:48:19 +08:00
mirivlad 87f0d90f7b sshkeeper: v0.2.0 — Phase 6: README update (not-Ansible, route/forward examples, hotkeys) 2026-06-03 10:40:56 +08:00
mirivlad 98492799ea sshkeeper: v0.2.0 — Phase 5: Search improvements (notes, tags, route, context) 2026-06-03 10:36:44 +08:00
mirivlad c2edaa4224 sshkeeper: v0.2.0 — Phase 4: CLI route/forward/tunnel commands 2026-06-03 10:32:18 +08:00
mirivlad 912b17e1f1 sshkeeper: v0.2.0 — Phase 3: Port Forwarding Manager (DB, TUI screens, SSH args) 2026-06-03 10:15:55 +08:00
mirivlad 700724e93b sshkeeper: v0.2.0 — Phase 2: Route / ProxyJump UX (model, migration, DB, SSH args, TUI) 2026-06-03 10:00:12 +08:00
mirivlad 446f55f740 sshkeeper: v0.2.0 — Phase 1: Cleaner TUI action model (action bar, help screen, action menu) 2026-06-03 09:33:53 +08:00
mirivlad 31f26164cc sshkeeper: v0.2.0 — Phase 0: TUI refactoring (extract form, template_form, help into separate files) 2026-06-03 09:26:50 +08:00
mirivlad b2d8ea959f Document release installation 2026-05-29 11:33:43 +08:00
mirivlad 01eae01408 Ignore release artifacts 2026-05-29 11:25:17 +08:00
mirivlad d66e103c73 Prepare public release docs 2026-05-29 10:52:03 +08:00
mirivlad c2b0e57f3a Add TUI tag and template management 2026-05-28 17:36:50 +08:00
mirivlad 0bd4463819 feat: add interactive server creation 2026-05-28 13:51:37 +08:00
mirivlad 4b996032a9 fix: improve vault and key passphrase flow 2026-05-28 13:38:53 +08:00
mirivlad 257ce79d42 fix: unlock legacy vault kdf files 2026-05-28 10:16:14 +08:00
mirivlad 0be1e93bb7 fix: keep server list usable with many servers 2026-05-28 10:03:26 +08:00