Skip to content

Release v1.0.5 - Terminal UI (TUI) Interface

Latest

Choose a tag to compare

@haidang1810 haidang1810 released this 29 Oct 03:36
· 2 commits to master since this release

🎨 New Features

  • Interactive Terminal UI using Bubble Tea framework
  • Arrow key navigation for connection list (↑/↓)
  • Interactive forms for adding/editing connections with Tab navigation
  • Delete confirmation dialogs for safety
  • Auto-launch TUI when running sm or sm list without arguments

✨ Improvements

  • Optimized TUI layout for small terminals
  • Removed unnecessary description field from forms (not displayed in table)
  • Better visual styling with Lipgloss (colors, borders, highlights)
  • Compact padding to maximize screen space
  • CLI commands still work alongside TUI (sm add, sm connect <name>, etc.)

🎯 Usage

TUI Mode (Interactive)

# Launch TUI
sm

# Or explicitly
sm list

TUI Keybindings:

  • ↑/↓: Navigate connections
  • Enter: Connect to selected server
  • a/n: Add new connection
  • e: Edit selected connection
  • d/x: Delete selected connection
  • r: Refresh list
  • q: Quit

CLI Mode (Traditional)

# Direct connect (shorthand)
sm my-server

# List in table format
sm list --format table

# List in JSON format
sm list --format json

# Add connection
sm add my-server --host example.com --user root

# Other commands work as usual
sm connect my-server
sm edit my-server
sm remove my-server

πŸ”§ Technical Details

  • Added dependencies: bubbletea, bubbles, lipgloss
  • New package: internal/tui with full TUI implementation
  • Updated CLAUDE.md with TUI architecture documentation
  • Password input with hidden characters (β€’β€’β€’)
  • Maintains backward compatibility with all CLI commands

πŸ“¦ Installation

Download the appropriate binary for your platform:

  • Linux (amd64): sm-linux-amd64
  • macOS (Intel): sm-darwin-amd64
  • macOS (Apple Silicon): sm-darwin-arm64
  • Windows (amd64): sm-windows-amd64.exe

Make it executable and move to your PATH:

chmod +x sm-linux-amd64
sudo mv sm-linux-amd64 /usr/local/bin/sm

Full Changelog: v1.0.4...v1.0.5