ttyd is a command-line utility that exposes a terminal program through a web browser. You specify the command to run and ttyd starts a web server that presents the resulting terminal session to connected clients.
It can be used for sharing an interactive shell, but it is not restricted to shells. Any command can be launched with its own arguments and working directory, making ttyd useful for remotely presenting terminal applications as well as providing browser-based command-line access.
Sessions are read-only by default unless client input is explicitly enabled. ttyd also offers controls for authentication, encryption, connection limits and reverse-proxy deployments.
This is free and open source software.
Key Features
- Expose a shell or other terminal application through a modern web browser.
- Uses libuv and browser-side WebGL rendering for responsive terminal operation.
- Supports CJK text and input method editors.
- Supports ZMODEM and trzsz file transfers.
- Displays Sixel graphics produced by compatible terminal programs.
- Encrypted connections using OpenSSL or Mbed TLS.
- Basic username and password authentication.
- Can delegate authentication to a reverse proxy using an HTTP header.
- Bind to a specified network interface or a Unix domain socket.
- Set the owner of a Unix domain socket.
- Run the child process with a specified user ID and group ID.
- Choose the working directory for the launched command.
- Read-only clients by default with an option to permit terminal input.
- Limit the maximum number of simultaneously connected clients.
- Optionally accept a single client and terminate after it disconnects.
- Supports IPv6 and configurable WebSocket keepalive intervals.
- Can automatically open the terminal in the system’s default browser.
- Supports deployment beneath a reverse-proxy base path.
- Cross-platform support – runs on Linux, macOS, FreeBSD, OpenBSD, OpenWrt and Windows.
Website: github.com/tsl0922/ttyd
Support:
Developer: Shuanglei Tao
License: MIT License

ttyd is written in C and TypeScript. Learn C with our recommended free books and free tutorials. Learn TypeScript with our recommended free books and free tutorials.
Related Software
| Console Screencasting Tools / Terminal Session Recording | |
|---|---|
| Terminalizer | Generates animated GIF images of your terminal |
| VHS | Wwrite terminal GIFs as code for integration testing and demoing |
| ttyd | Shares your terminal over the web |
| asciinema | Record and share terminal sessions |
| t-rec | Generates animated GIF images for the web |
| agg | asciinema gif generator |
| ffscreencast | Shell wrapper for ffmpeg that allows fool-proof screen recording |
| IPBT | High-tec terminal player |
| rec | Records terminal sessions and turns them into reusable workflows |
| TermSVG | Record terminal sessions and export them as animated SVG files |
| termrec | Set of tools for recording and replaying tty sessions |
| screencast | Interface to record a X11 desktop |
| script | The granddaddy of terminal recorders |
Read our verdict in the software roundup.
LinuxLinks helps you discover the best free and open source software for Linux. Explore our extensive collection of recommended applications, including alternatives to popular proprietary software.We also publish software reviews, Linux tutorials, hardware reviews, free programming books and articles covering the wider open source community. Browse our Linux resources to discover more. Know a useful free and open source Linux application we haven't covered? Suggest a program for inclusion. Has your software been featured on LinuxLinks? Display one of our Featured on LinuxLinks badges on your website or GitHub README. |


Please read our Comment Policy before commenting.