node package manager


ttycast: broadcast your tty!

This app allows you to broadcast your tty online, in really real time! Powered by:



Install ttyrec. On Mac OS X, with Homebrew, you would do:

brew install ttyrec

On Ubuntu, you can do:

sudo apt-get install ttyrec

Install ttycast:

npm install -g ttycast

Running (Broadcast & Record)

First, set your terminal to the size that you prefer to broadcast, then run the script:

ttyreccast outfile.tty

Open your browser and navigate to the server. You should see a blank black screen.


Then, open a new terminal of the same size and run this command:

reset && ttyrec /tmp/ttycast

You should see your terminal screen on the web browser now. Recorded output goes into outfile.tty.

Changing Port

ttycast uses the PORT environment variable but the default port is 13377

Running (manual way)

In your terminal emulator, create a named pipe and pipe it using ttyplay -n to ttycast.

mkfifo /tmp/ttycast && ttyplay -n /tmp/ttycast | ttycast -s 80x25; rm /tmp/ttycast

Open your browser and navigate to the server.


Then, spawn a new 80x25 terminal window and start recording:

reset && ttyrec /tmp/ttycast

Then you should see characters appearing in real-time. After using, don't forget to rm /tmp/ttycast!

Piping Via SSH

You can install ttycast on your server somewhere, and pipe your local terminal there through SSH!

Good when you are behind a firewall.

ttyplay -n /tmp/ttycast | ssh PORT=12345 ttycast

Pipe Anything

Um you can pipe anything that a terminal can understand to ttycast, and it will be broadcasted.

brew install sl
{ while true; do sl 2>&1; done } | ttycast


The MIT license