Wish is a Go library that simplifies building custom SSH applications with secure defaults and extensible middleware.
Make SSH apps, just like that! 💫
Wish is designed for developers who want to create secure, remotely accessible SSH applications beyond traditional shell access, such as custom authentication systems or interactive terminal UIs. It is ideal for integrating SSH-based functionality like Git servers or terminal apps into existing projects with minimal effort.
Wish requires Go programming knowledge to integrate and customize SSH applications. The Git middleware depends on having Git installed on the server. Middleware order matters as they are composed first to last, with the last executed first. This tool is best suited for developers building SSH-based services rather than end users.
Ensure Go is installed on your system
Add Wish to your Go project using: go get github.com/charmbracelet/wish
Import Wish in your Go code to start building SSH apps
Optionally install Git on your server to use the Git middleware
ssh git.charm.sh
Demo of the Wish Bubble Tea middleware serving a TUI application over SSH