SSHG
Empowering Seamless, Secure Remote Connections Everywhere
Built with the tools and technologies:
Table of Contents
Overview
sshg is a versatile developer tool that simplifies SSH host management, connection workflows, and automation. It integrates configuration parsing, an intuitive terminal UI, and remote server management into a cohesive experience for developers working across diverse environments.
Why sshg?
This project aims to streamline SSH workflows and automate deployment processes. The core features include:
🎯 Configuration Management: Easily parse, add, and update SSH hosts within your ~/.ssh/config file through interactive prompts.
🚀 User-Friendly UI: Select and connect to hosts seamlessly via a terminal-based interface, reducing manual command-line effort.
🔧 Cross-Platform CI/CD: Automate building, testing, packaging, and releasing binaries on Linux and Windows with integrated workflows.
🔒 Secure SSH Connections: Establish reliable remote sessions for server management and automation tasks.
⚙️ Modular Architecture: Integrate configuration, UI, and SSH connectivity for a cohesive developer experience.
Getting Started
Prerequisites
This project requires the following dependencies:
- Programming Language: Rust
- Package Manager: Cargo
Installation
Build sshg from the source and install dependencies:
-
Clone the repository:
-
Navigate to the project directory:
-
Install the dependencies: Using cargo:
Usage
Run the project with:
Using cargo:
Testing
Sshg uses the Rust test framework. Run the test suite with:
Using cargo:
Built with ❤️ using Rust