A terminal in your browser, powered by ttyd and tmux.
0
stars
21
commits
HTML
primary language
Sep 5, 2026
updated
A terminal in your browser, with unix tools (ttyd, tmux) that you love and trust.

index.html.Install ttyd and tmux:
# Homebrew / macOS
brew install ttyd tmux
# Debian / Ubuntu
sudo apt install ttyd tmux
# Fedora
sudo dnf install ttyd tmux
# Arch
sudo pacman -S ttyd tmux
Download the release file:
curl -fL https://www.gulecha.org/ttydterm/index.html -o "$HOME/ttydterm.html"
Replace user:password with credentials you choose, then start ttydterm:
ttyd -i 127.0.0.1 -p 7681 -W -O -c user:password -I "$HOME/ttydterm.html" -t cursorBlink=false bash -l
Open http://localhost:7681. Keep the default 127.0.0.1 binding for local use. If you bind ttyd to another interface, add TLS.
The main site covers controls, themes, tmux, notifications, security, and configuration.
Canonical source lives in src/. build.mjs generates the self-contained index.html file.
bun run build.mjs
python3 -m http.server 8791 &
BASE=http://127.0.0.1:8791/ node test.mjs
git diff --check
The project uses globally installed Bun and TypeScript. It has no package manifest, lockfile, or local node_modules directory.
This project accepts contributions only as issues. Include your request and, optionally, a prompt you tested that builds the feature.
Please do not open pull requests. I only trust changes I build myself, in my own way.
Forks and experimentation are welcome. If you try something interesting, send me an email note. :)
MIT licensed.
21 commits
HTML
59.7%
JavaScript
19.3%
TypeScript
17.3%
CSS
3.7%
A terminal in your browser, powered by ttyd and tmux.
0
stars
21
commits
HTML
primary language
Sep 5, 2026
updated
A terminal in your browser, with unix tools (ttyd, tmux) that you love and trust.

index.html.Install ttyd and tmux:
# Homebrew / macOS
brew install ttyd tmux
# Debian / Ubuntu
sudo apt install ttyd tmux
# Fedora
sudo dnf install ttyd tmux
# Arch
sudo pacman -S ttyd tmux
Download the release file:
curl -fL https://www.gulecha.org/ttydterm/index.html -o "$HOME/ttydterm.html"
Replace user:password with credentials you choose, then start ttydterm:
ttyd -i 127.0.0.1 -p 7681 -W -O -c user:password -I "$HOME/ttydterm.html" -t cursorBlink=false bash -l
Open http://localhost:7681. Keep the default 127.0.0.1 binding for local use. If you bind ttyd to another interface, add TLS.
The main site covers controls, themes, tmux, notifications, security, and configuration.
Canonical source lives in src/. build.mjs generates the self-contained index.html file.
bun run build.mjs
python3 -m http.server 8791 &
BASE=http://127.0.0.1:8791/ node test.mjs
git diff --check
The project uses globally installed Bun and TypeScript. It has no package manifest, lockfile, or local node_modules directory.
This project accepts contributions only as issues. Include your request and, optionally, a prompt you tested that builds the feature.
Please do not open pull requests. I only trust changes I build myself, in my own way.
Forks and experimentation are welcome. If you try something interesting, send me an email note. :)
MIT licensed.
21 commits
HTML
59.7%
JavaScript
19.3%
TypeScript
17.3%
CSS
3.7%