yetty — a WebGPU terminal, running in your browser
This page runs the real yetty terminal compiled to WebAssembly.
Everything below happens in your browser — the only server
involvement is whatever a session type explicitly connects to.
Terminals tab
- Click the ☰ button to open a new terminal.
Pick a session type, fill in the details, hit
Start. The ☰ button always sits below the
newest terminal; open as many as you like.
- Each terminal panel: click into it to type, drag the
grip bar at its bottom edge to resize
(the terminal re-wraps live), close it with
× in its header.
- Inside yetty, Ctrl+Shift+T
opens another tab of the same session kind.
- The boot overlay on a starting terminal collapses on its
own; the console pill (top right of the
panel) brings it back.
Session types
- TinyEMU VM — Alpine Linux on an emulated
RISC-V machine, fully in-browser. Each terminal gets its
own telnet login on the shared VM.
- yos — a FreeBSD-flavoured wasm userspace
(zsh, nvim, tmux, coreutils), fully in-browser. One
process tree per page: every terminal gets a fresh zsh on
the same system —
ps aux in one shell sees
them all.
- WebSocket shell — a raw PTY served by
websocket-pty-server.py on a host you run.
- Telnet / SSH — connect
through a WebSocket↔TCP bridge
(
telnet-websocket.sh); SSH crypto runs in the
browser, the bridge only relays encrypted bytes.
- ygreeter — feature showcase and
yetty.dev demo shell — one-click SSH into
the hosted throwaway demo (yetty / yetty). The showcase
auto-launches the ygui feature demo in the terminal; the
demo shell drops you straight at a prompt.
- lwIP relay — experimental in-browser
TCP/IP stack; telnets to a real host:port through an L2
relay.
Engines tab
The TinyEMU VM and the yos userspace are page-shared
engines: loaded at most once, attached to by
any number of terminals, running independently of all of them.
Start one manually to watch its boot log, or just open a
terminal of that type — the engine starts automatically.
Deep links
Every session type can be opened straight from the URL:
?mode=yos, ?mode=temu,
?mode=websocket&url=ws://host:8090,
?mode=telnet&url=ws://host:8024,
?mode=ssh&user=you.
Downloads and caching
The first visit downloads the terminal, its assets and — if
used — the VM rootfs or the yos tools. All of it is cached in
the browser in final, decoded form: later visits and
additional terminals load from disk and only re-download
files that actually changed in a release.