mirror of
https://github.com/Adembc/lazyssh.git
synced 2026-07-14 12:13:34 +02:00
improve docs (#4)
This commit is contained in:
@@ -7,13 +7,12 @@
|
|||||||
Lazyssh is a terminal-based, interactive SSH manager inspired by tools like lazydocker and k9s — but built for managing your fleet of servers directly from your terminal.
|
Lazyssh is a terminal-based, interactive SSH manager inspired by tools like lazydocker and k9s — but built for managing your fleet of servers directly from your terminal.
|
||||||
<br/>
|
<br/>
|
||||||
With lazyssh, you can quickly navigate, connect, manage, and transfer files between your local machine and any server defined in your ~/.ssh/config. No more remembering IP addresses or running long scp commands — just a clean, keyboard-driven UI.
|
With lazyssh, you can quickly navigate, connect, manage, and transfer files between your local machine and any server defined in your ~/.ssh/config. No more remembering IP addresses or running long scp commands — just a clean, keyboard-driven UI.
|
||||||
## 🎥 Demo
|
|
||||||
|
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## ✨ Features
|
## ✨ Features
|
||||||
|
|
||||||
### Server Management (current)
|
### Server Management
|
||||||
- 📜 Read & display servers from your `~/.ssh/config` in a scrollable list.
|
- 📜 Read & display servers from your `~/.ssh/config` in a scrollable list.
|
||||||
- ➕ Add a new server from the UI by specifying alias, host/IP, username, port, identity file.
|
- ➕ Add a new server from the UI by specifying alias, host/IP, username, port, identity file.
|
||||||
- ✏ Edit existing server entries directly from the UI.
|
- ✏ Edit existing server entries directly from the UI.
|
||||||
@@ -32,10 +31,51 @@ With lazyssh, you can quickly navigate, connect, manage, and transfer files betw
|
|||||||
- 📁 Copy files between local and servers with an easy picker UI.
|
- 📁 Copy files between local and servers with an easy picker UI.
|
||||||
- 📡 Port forwarding (local↔remote) from the UI.
|
- 📡 Port forwarding (local↔remote) from the UI.
|
||||||
- 🔑 Enhanced Key Management:
|
- 🔑 Enhanced Key Management:
|
||||||
- Use default local public key (~/.ssh/id_ed25519.pub or ~/.ssh/id_rsa.pub)
|
- Use default local public key (~/.ssh/id_ed25519.pub or ~/.ssh/id_rsa.pub)
|
||||||
- Paste custom public keys manually
|
- Paste custom public keys manually
|
||||||
- Generate new keypairs and deploy them
|
- Generate new keypairs and deploy them
|
||||||
- Automatically append keys to ~/.ssh/authorized_keys with correct permissions
|
- Automatically append keys to ~/.ssh/authorized_keys with correct permissions
|
||||||
|
---
|
||||||
|
|
||||||
|
## 📷 Screenshots
|
||||||
|
|
||||||
|
<div align="center">
|
||||||
|
|
||||||
|
### 🚀 Startup
|
||||||
|
<img src="./docs/loader.png" alt="App starting splash/loader" width="800" />
|
||||||
|
|
||||||
|
Clean loading screen when launching the app
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### 📋 Server Management Dashboard
|
||||||
|
<img src="./docs/list server.png" alt="Server list view" width="900" />
|
||||||
|
|
||||||
|
Main dashboard displaying all configured servers with status indicators, pinned favorites at the top, and easy navigation
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### 🔎 Search
|
||||||
|
<img src="./docs/search.png" alt="Fuzzy search servers" width="900" />
|
||||||
|
|
||||||
|
Fuzzy search functionality to quickly find servers by name, IP address, or tags
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### ➕ Add Server
|
||||||
|
<img src="./docs/add server.png" alt="Add a new server" width="900" />
|
||||||
|
|
||||||
|
User-friendly form interface for adding new SSH connections.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### 🔐 Connect to server
|
||||||
|
<img src="./docs/ssh.png" alt="SSH connection details" width="900" />
|
||||||
|
|
||||||
|
SSH into the selected server
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 📦 Installation
|
## 📦 Installation
|
||||||
@@ -76,21 +116,6 @@ make run
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## ⚙️ Configuration
|
|
||||||
|
|
||||||
lazyssh reads your SSH hosts from `~/.ssh/config`. Example entry:
|
|
||||||
|
|
||||||
```Host my-server
|
|
||||||
HostName 203.0.113.10
|
|
||||||
User ubuntu
|
|
||||||
Port 22
|
|
||||||
IdentityFile ~/.ssh/id_ed25519
|
|
||||||
```
|
|
||||||
|
|
||||||
You can add/edit/delete entries from within the UI as well; lazyssh will keep things consistent.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## ⌨️ Key Bindings
|
## ⌨️ Key Bindings
|
||||||
|
|
||||||
| Key | Action |
|
| Key | Action |
|
||||||
@@ -114,14 +139,24 @@ Tip: The hint bar at the top of the list shows the most useful shortcuts.
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 🚀 Quickstart
|
## 🤝 Contributing
|
||||||
|
|
||||||
- Ensure your `~/.ssh/config` contains at least one Host.
|
Contributions are welcome!
|
||||||
- Run the app: `./lazyssh`
|
|
||||||
- Use `/` to search, `Enter` to connect.
|
- If you spot a bug or have a feature request, please [open an issue](https://github.com/adembc/lazyssh/issues).
|
||||||
|
- If you'd like to contribute, fork the repo and submit a pull request ❤️.
|
||||||
|
|
||||||
|
We love seeing the community make Lazyssh better 🚀
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
## ⭐ Support
|
||||||
|
|
||||||
|
If you find Lazyssh useful, please consider giving the repo a **star** ⭐️ and join [stargazers](https://github.com/adembc/lazyssh/stargazers).
|
||||||
|
|
||||||
|
☕ You can also support me by [buying me a coffee](https://www.buymeacoffee.com/adembc) ❤️
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## 🙏 Acknowledgments
|
## 🙏 Acknowledgments
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
|
After Width: | Height: | Size: 50 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 348 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 48 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 161 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 24 KiB |
@@ -19,7 +19,7 @@ SHELL = /usr/bin/env bash -o pipefail
|
|||||||
|
|
||||||
# Project variables
|
# Project variables
|
||||||
PROJECT_NAME ?= $(shell basename $(CURDIR))
|
PROJECT_NAME ?= $(shell basename $(CURDIR))
|
||||||
VERSION ?= v0.0.1
|
VERSION ?= v0.1.0
|
||||||
BUILD_TIME ?= $(shell date -u '+%Y-%m-%d_%H:%M:%S')
|
BUILD_TIME ?= $(shell date -u '+%Y-%m-%d_%H:%M:%S')
|
||||||
GIT_COMMIT ?= $(shell git rev-parse --short HEAD 2>/dev/null || echo "unknown")
|
GIT_COMMIT ?= $(shell git rev-parse --short HEAD 2>/dev/null || echo "unknown")
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user