Portfolio

Golang · Event-driven TUI · Modular CLI

SSHTUI

A terminal-based SSH client that brings server profiles, interactive sessions, file transfer, and key management into one keyboard-driven workflow. It supports password, private-key, SSH-agent, and passphrase authentication, with optional session logging. A goroutine-based health monitor checks connectivity and latency without blocking the interface. Configuration is stored locally as JSON for a lightweight, cross-platform operational tool.

Interface preview for SSHTUI

Tech stack

GoBubble TeaBubblesLip GlossWishSSHSFTPSSH AgentPTYGoroutinesJSON Storage

Architecture

Event-driven TUI · Modular CLI

The command entry point assembles configuration storage, health monitoring, SSH and SFTP services, and the Bubble Tea root model. The interface follows an Elm-style Init, Update, and View loop. Long-running input and output execute as commands or goroutines and return messages to the interface.

Core capabilities

  • Server-profile creation, editing, deletion, and search
  • Password, key, and agent-based SSH
  • Interactive PTY sessions
  • SFTP uploads and downloads with progress
  • SSH-key discovery and generation
  • Session recording and log browsing
  • Background health checks and live latency
  • Groups, tags, and keyboard shortcuts