Skip to content
AmanbigPublic

About

A fast, cross-platform desktop SSH client with a built-in SFTP file browser, remote code editor, and port forwarding manager.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

4 stars

Watchers

0 watching

Forks

Termlet logo

Termlet

A fast, cross-platform desktop SSH client with a built-in SFTP file browser, remote code editor, and port forwarding manager.

Latest release Snap Status CI License: Apache 2.0 Open issues Platforms

Install · Features · Build · Contribute · Report a bug

Termlet screenshot

Why Termlet?

Managing a remote server usually means juggling a terminal, an SFTP client, a text editor, and a pile of ssh -L commands. Termlet puts them in one lightweight native window: connect once, then browse files, edit them in place, and tunnel ports without leaving the app.

Built with Wails v2 (Go) and React 19 + TypeScript, so it ships as a small native binary instead of an Electron bundle.

Features

  • SSH terminal and profiles: save servers, use passwords, private keys (with passphrases), or your SSH agent. Host keys are verified, with a warning when a key changes.
  • Multi-tab remote terminal: true line-based stream emulator with multi-tab concurrency, multi-line command continuation (\ & Shift+Enter), tab renaming, tab duplication, and draggable drawer resizing.
  • SFTP file browser: browse, create, rename, delete, and upload files on the remote host with bi-directional terminal CWD sync.
  • Remote code editor: CodeMirror 6 with syntax highlighting, multiple tabs, 14 themes, and Ctrl+S to save straight to the server. Binary files are detected and not opened.
  • Local port forwarding (ssh -L): create, start, and stop tunnels from a dedicated view. Forwards are saved with the profile, with one-click "open in browser" and presets for common services (HTTP, Vite, PostgreSQL, MySQL, Redis, Traefik).
  • Auto-update: checks GitHub Releases and installs updates in place (.deb, .rpm, Windows installer, or portable binary).
  • Polished UI: frameless window, resizable sidebar and terminal drawer, light and dark themes, and readable error messages with troubleshooting hints.

Install

Snap Store (Linux)

Install directly from the Ubuntu Snap Store:

sudo snap install termlet
sudo snap connect termlet:ssh-keys  # Grants access to ~/.ssh private keys

GitHub Releases

Download the latest build for your platform from the Releases page:

Platform Packages
Linux (Snap) sudo snap install termlet
Linux (amd64) .deb, .rpm, .tar.gz, .snap
Windows (amd64) Installer .exe, portable .zip
macOS (Universal) .dmg, .zip

On Linux, Termlet needs GTK 3 and WebKitGTK 4.1 at runtime (installed automatically by the .deb and .rpm packages).

Build from source

Prerequisites

  • Go (version in go.mod)

  • Node.js 20+ and npm

  • Wails CLI v2.9+: go install github.com/wailsapp/wails/v2/cmd/wails@latest

  • Linux only, GTK and WebKit headers:

    # Debian / Ubuntu / Mint
    sudo apt-get install -y build-essential pkg-config libgtk-3-dev libwebkit2gtk-4.1-dev
    
    # Fedora / RHEL
    sudo dnf install -y gtk3-devel webkit2gtk4.1-devel

Run in development

git clone https://github.com/Amanbig/termlet.git
cd termlet
(cd frontend && npm install)
wails dev -tags webkit2_41      # drop "-tags webkit2_41" on Windows/macOS

Production build

wails build -tags webkit2_41    # output: build/bin/termlet

Tests

go test ./internal/...
cd frontend && npx tsc --noEmit

Project layout

termlet/
├── app.go, main.go        # Wails entrypoint and Go ↔ frontend bindings
├── internal/
│   ├── sshclient/         # SSH client, PTY sessions, authentication
│   ├── sftpclient/        # SFTP file operations
│   ├── tunnel/            # Local port forwarding manager
│   ├── connections/       # Connection manager and sessions
│   ├── storage/           # Profile and settings persistence
│   ├── models/            # Shared data types
│   ├── updater/           # GitHub release check and installer
│   └── version/           # Version constant
├── frontend/              # React + TypeScript + Tailwind CSS v4 UI
├── build/                 # Icons and packaging (Linux, Windows, macOS)
└── .github/               # CI, release workflow, issue/PR templates

Contributing

Contributions of all sizes are welcome: bug reports, feature ideas, docs, and code.

  1. Read CONTRIBUTING.md for the dev setup and PR process.
  2. Look for issues labeled good first issue or help wanted.
  3. Please follow our Code of Conduct.

Found a security problem? Don't open a public issue; see SECURITY.md.

Changelog

See RELEASE_NOTES.md for the current release and releases/ for the full history.

License

Licensed under the Apache License 2.0.

About

A fast, cross-platform desktop SSH client with a built-in SFTP file browser, remote code editor, and port forwarding manager.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

4 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages