### ๐ Startup

Clean loading screen when launching the app
---
### ๐ Server Management Dashboard

Main dashboard displaying all configured servers with status indicators, pinned favorites at the top, and easy navigation
---
### ๐ Search

Fuzzy search functionality to quickly find servers by name, IP address, or tags
---
### โ Add/Edit Server

Tabbed interface for managing SSH connections with extensive configuration options organized into:
- **Basic** - Host, user, port, keys, tags
- **Connection** - Proxy, timeouts, multiplexing, canonicalization
- **Forwarding** - Port forwarding, X11, agent
- **Authentication** - Keys, passwords, methods, algorithm settings
- **Advanced** - Security, cryptography, environment, debugging
---
### ๐ Connect to server

SSH into the selected server
---
## ๐ฆ Installation
### Option 1: Homebrew (macOS)
```bash
brew install Adembc/homebrew-tap/lazyssh
```
### Option 2: Download Binary from Releases
Download from [GitHub Releases](https://github.com/Adembc/lazyssh/releases). You can use the snippet below to automatically fetch the latest version for your OS/ARCH (Darwin/Linux and amd64/arm64 supported):
```bash
# Detect latest version
LATEST_TAG=$(curl -fsSL https://api.github.com/repos/Adembc/lazyssh/releases/latest | jq -r .tag_name)
# Download the correct binary for your system
curl -LJO "https://github.com/Adembc/lazyssh/releases/download/${LATEST_TAG}/lazyssh_$(uname)_$(uname -m).tar.gz"
# Extract the binary
tar -xzf lazyssh_$(uname)_$(uname -m).tar.gz
# Move to /usr/local/bin or another directory in your PATH
sudo mv lazyssh /usr/local/bin/
# enjoy!
lazyssh
```
### Option 3: Build from Source
```bash
# Clone the repository
git clone https://github.com/Adembc/lazyssh.git
cd lazyssh
# Build for macOS
make build
./bin/lazyssh
# Or Run it directly
make run
```
---
## โจ๏ธ Key Bindings
| Key | Action |
| ----- | ----------------------------- |
| / | Toggle search bar |
| โโ/jk | Navigate servers |
| Enter | SSH into selected server |
| c | Copy SSH command to clipboard |
| g | Ping selected server |
| r | Refresh background data |
| a | Add server |
| e | Edit server |
| t | Edit tags |
| d | Delete server |
| p | Pin/Unpin server |
| s | Toggle sort field |
| S | Reverse sort order |
| q | Quit |
**In Server Form:**
| Key | Action |
| ------ | -------------------- |
| Ctrl+H | Previous tab |
| Ctrl+L | Next tab |
| Ctrl+S | Save |
| Esc | Cancel |
Tip: The hint bar at the top of the list shows the most useful shortcuts.
---
## ๐ค Contributing
Contributions are welcome!
- 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 ๐
### Semantic Pull Requests
This repository enforces semantic PR titles via an automated GitHub Action. Please format your PR title as:
- type(scope): short descriptive subject
Notes:
- Scope is optional and should be one of: ui, cli, config, parser.
Allowed types in this repo:
- feat: a new feature
- fix: a bug fix
- improve: quality or UX improvements that are not a refactor or perf
- refactor: code change that neither fixes a bug nor adds a feature
- docs: documentation only changes
- test: adding or refactoring tests
- ci: CI/CD or automation changes
- chore: maintenance tasks, dependency bumps, non-code infra
- revert: reverts a previous commit
Examples:
- feat(ui): add server pinning and sorting options
- fix(parser): handle comments at end of Host blocks
- improve(cli): show friendly error when ssh binary missing
- refactor(config): simplify backup rotation logic
- docs: add installation instructions for Homebrew
- ci: cache Go toolchain and dependencies
Tip: If your PR touches multiple areas, pick the most relevant scope or omit the scope.
---
## โญ 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) โค๏ธ