tmate: Share Your Terminal!
Have you ever done remote pair programming over the Internet? Or tried to share your screen over the Internet to show someone something on your screen? Using slack, team viewer, zoom, and what not. How was the experience?
Being a programmer, I’m sure a lot of you spend your time in the terminal, editor / IDE and the browser? And probably more! Like slack :P
Now, let’s say, I’m going to use slack / zoom to just do audio call over the Internet, or use something like Google Meet or even just a phone call using my mobile network or over the Internet using WhatsApp
So, that solves the problem of communication - words / audio. Now, how do I visually show something to the other person? Like, other than Slack video or whatever the tons of solutions out there, like WebRTC in the browser and what not.
If you are happy with the existing solutions, you could still keep reading to check out what’s out there :)
Now, let’s say I just want to share my terminal, not my editor / IDE or my browser or anything else in my screen. A smooth solution to sharing your terminal is sharing a tmux session and one solution out there for that is - https://tmate.io
I created a video of how it looks like. You can check it out here on YouTube and here on Vimeo and it’s below too!
Let me know what you think about tmate :) And I would recommend hosting tmate yourself if you are working in a company or working with confidential stuff. tmate is completely open source! You can find all the source code relating to their software here - https://github.com/tmate-io/ https://github.com/tmate-io/tmate-kube might come in handy if you want to host tmate in your kubernetes cluster ;)
By the way, there may be other solutions to share your tmux session. This is just one of them. I would love to hear about others ;) :) I’ve seen some in GitHub, haven’t tried em out!