Releases: dharunashokkumar/termcall
Release list
termcall v1.0.0
Chat rooms and video calls that live in your terminal. The video is characters.
Install
# macOS / Linux
curl -fsSL https://call.dharun.dev/install.sh | sh
# Windows
irm https://call.dharun.dev/install.ps1 | iexOr take a binary below. One file — ffmpeg is inside it, so there is nothing
else to install.
What it does
Chat rooms hold up to 10 people. Video calls hold up to 4, tiled
across your terminal, with three render modes you can cycle mid-call with m:
- blocks —
▀carrying two colours per cell, so one character shows two
pixels in 24-bit colour. The most picture per cell. - ascii — one character per cell from
.:-=+*#%@, tinted. - braille — 2×4 dots per cell, thresholded against each cell's own average,
which makes it find edges.
Create a room to get a six-character code; anyone with the code joins. Nothing
is stored — when the last person leaves, the room is deleted and the code is
free again.
How it stays free
Chat is relayed through a Cloudflare Durable Object. Video is not: after the
handshake, frames go straight between terminals over WebRTC. Cloudflare bills
one request per incoming WebSocket message, so relaying 10 fps from four
people would cost ~24,000 requests in a ten-minute call — a quarter of the
free tier's day. The same call peer-to-peer costs about twenty.
What crosses the wire is a ~1.5 KB JPEG, not characters; each terminal renders
it locally, which is why you can change mode and window size mid-call.
Verified
All tests pass against production, including two real peers completing a
WebRTC handshake and exchanging frames. CI builds and tests on Linux, macOS
and Windows.