gitmyhub

gotty

Go ★ 20k updated 1y ago

Share your terminal as a web application

GoTTY shares any terminal command as a live web page so colleagues or clients can watch, or optionally type into, your terminal session from a browser, with no SSH setup required.

GoWebSocketsetup: easycomplexity 2/5

GoTTY is a command-line tool that lets you share your terminal — the text-based window developers use to run commands — as a web page that anyone can view in a browser. The problem it solves is access: you might want to share a running process with a colleague, demonstrate a tool to someone remotely, or give a client a read-only view of a server's status without setting up SSH access.

You run GoTTY with any command as an argument, and it starts a local web server (on port 8080 by default). Anyone who opens that URL in a browser sees the terminal output as if they were looking over your shoulder. By default, viewers can only watch — they cannot type. If you explicitly enable write access with the -w flag, remote users can interact with the terminal too, though the README cautions that this is risky for most commands. For safer multi-user interaction, the README suggests running GoTTY alongside tmux or GNU Screen so multiple clients share one session. Security options include basic authentication with a username and password, random URL generation to limit who can find the link, and TLS/SSL encryption.

You would use GoTTY when you need to show a running terminal session to someone else over the web without complex setup. It is written in Go and communicates with browsers over WebSocket.

Where it fits