Bringing Netflix to the Server


A few hackathons ago some friends and I were watching the ASCII Star Wars video and I thought, 'if you can watch a crappy text rendition of Star Wars through telnet, why couldn't you get all of Netflix in your terminal too?'

I was so sleep deprived at the time that somehow the thought didn't stick in my head. Several days later I had a flash of "original inspiration" which I was sure I'd never considered before, at least until the aforementioned friends convinced me that I was repeating myself.

After a rough start at YHack, I decided I was going to implement this idea. By the time I started it was already close to the deadline. It was a scramble to finish on time, but it came together in the end.

What it does

TextFLIX lets you watch Netflix in your text editor or terminal. It's perfect for elitist sysadmins and GUI-haters everywhere.

How I built it

TeXTFLIX is more than just a Netflix client; it's actually a window into your browser. Using the Chrome screen-capture API, a custom Chrome Extension pipes frames to the server (a python script) through a WebSocket, where they are rendered as full ansi-colored text and sent out to all connected telnet clients. Technically it could be used for any website, but Netflix is a perfect use-case.

Challenges I ran into

Stdout is slow. Super slow. Really killed my FPS.

Accomplishments that I'm proud of

Made this thing in 5-ish hours while being sleep deprived. Didn't go home after previous project tanked.

What I learned

Come to a hackathon prepared. Save your devpost submissions.

What's next for TEXTFLIX

Allow connections via telnet. Implement as a vim plugin. Rewrite the server in Julia.

+ 11 more
Share this project: