From 16ae7ffde2106de955e60aeb6f2e23c0293d7233 Mon Sep 17 00:00:00 2001 From: x3 Date: Mon, 7 Sep 2026 15:25:47 +0000 Subject: [PATCH] docs: update README with sidebar, notifications, layout diagram --- README.md | 62 +++++++++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 51 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index 27c2805..11de907 100644 --- a/README.md +++ b/README.md @@ -1,17 +1,19 @@ # x3-ssh -A GTK3-based SSH client with a tabbed terminal interface, server management, and SSH key storage. +A GTK3-based SSH client with a tabbed terminal interface, server sidebar, notifications, and SSH key storage. -![Icon](icons/x3-ssh.png) +![Icon](icons/x3-ssh.svg) ## Features - **Tabbed terminal** - Multiple SSH sessions in tabs -- **Server management** - Save, edit, and remove SSH server configurations +- **Server sidebar** - Saved servers displayed in a sidebar, double-click to connect +- **Quick connect** - Connect directly via host/user/port fields in the toolbar - **SSH key management** - Generate, import, and manage SSH keys -- **Quick connect** - Connect directly via host/user/port fields +- **Notifications** - Animated notification bar for status messages (saved, connected, disconnected, errors) - **VTE terminal** - Full terminal emulation with 256 color support - **Resizable pty** - Terminal auto-resizes the remote pty on window resize +- **System integration** - `.desktop` file and icon for application menu entry ## Dependencies @@ -35,10 +37,16 @@ autoreconf -fi ./configure make -# Install (optional) +# Install (installs binary, .desktop file, and icon system-wide) sudo make install ``` +## Uninstall + +```bash +sudo make uninstall +``` + ## Configuration Server configurations are stored in: @@ -54,12 +62,44 @@ SSH keys are stored in: ## Usage -1. Start the application: `./x3-ssh` -2. **Quick Connect**: Enter host, user, and port in the toolbar, click "Connect" -3. **Saved Servers**: Click "Servers" to add/edit/remove saved server configurations -4. **SSH Keys**: Click "Keys" to generate or import SSH keys -5. **Tabs**: Click "+ Tab" for a new empty tab, "Close Tab" to close the current one -6. Select a saved server from the dropdown to auto-fill connection details +1. Start the application: `x3-ssh` +2. **Server Sidebar**: Saved servers appear in the left sidebar. Double-click to connect. +3. **Quick Connect**: Enter host, user, and port in the toolbar, click "Connect" +4. **Add Server**: Click the `+` button in the sidebar header, or use the "Add Server" dialog +5. **SSH Keys**: Click "Keys" in the toolbar to generate or import SSH keys +6. **Tabs**: Click "+ Tab" for a new empty tab, "Close Tab" to close the current one + +## Notifications + +The notification bar at the top shows status messages: +- `Server saved: ` - when a server config is saved +- `Server connected: @:` - on successful connection +- `Server disconnected` - when disconnecting +- `Server removed: ` - when a server is deleted +- `Key generated: ` / `Key imported: ` / `Key deleted: ` +- `Failed to connect to ` - on connection failure (red) + +Notifications auto-hide after 4 seconds. + +## Layout + +``` +┌────────────────────────────────────────────────────┐ +│ [Notification bar - auto-hiding] │ +├────────────────────────────────────────────────────┤ +│ [Server▼] [host___] [user___] [port] [Connect] ...│ +├───────────┬────────────────────────────────────────┤ +│ Servers │ [Tab: MyServer] [Tab: Prod] [+] │ +│ ─────── │ │ +│ MyServer │ user@host:~$ │ +│ root@h:22 │ │ +│ │ │ +│ Prod │ │ +│ admin@p:22│ │ +├───────────┴────────────────────────────────────────┤ +│ Connected to root@host:22 │ +└────────────────────────────────────────────────────┘ +``` ## License