tsl0922/ttyd

Share your terminal over the web

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 54 minutes ago
Added to GitGenius on September 4th, 2026
Created on September 13th, 2016
Open Issues & Pull Requests: 113 (+0)
GitHub issues: Enabled
Number of forks: 1,205
Total Stargazers: 12,321 (+1)
Total Subscribers: 123 (+0)

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Issue API getrepoissuespagesummary failed: 429 Rate limit exceeded. Please try again later.

Detailed Description

ttyd is a command-line tool for sharing a terminal over the web.

The tool solves the problem of accessing and controlling a terminal session remotely through a web browser. It works by establishing a WebSocket connection between a server running on the host machine and a web client, allowing real-time bidirectional communication. The backend is built on libuv for performance, while the frontend uses WebGL2 to render the terminal interface efficiently.

The tool suits developers and system administrators who need to provide remote terminal access without setting up SSH or other traditional remote access protocols. It works well for sharing temporary access, embedded systems like OpenWrt devices, or scenarios where a simple web-based interface is preferable to SSH clients. Compared to the alternatives named in the README, ttyd is written in C and built on libuv, whereas Wetty is Node-based and GoTTY is Go-based. The tool distinguishes itself through support for CJK characters and IME input, ZMODEM and trzsz file transfer protocols, Sixel image output, and SSL encryption via OpenSSL or Mbed TLS. It runs on macOS, Linux, FreeBSD, OpenBSD, OpenWrt, and Windows, with installation available through multiple package managers and precompiled binaries.

The project maintains separate automated workflows for backend and frontend testing. The tool is packaged across numerous Linux distributions and other platforms, indicating broad ecosystem adoption and ongoing maintenance compatibility.