The remote framebuffer protocol (RFB) used by VNC ...
# share-your-work
a
The remote framebuffer protocol (RFB) used by VNC is a quite small and malleable tool for constructing GUIs. It requires only a bi-directional communication channel, which lets it tunnel through just about anything, and makes it very easy to write agnostically in Go. As a proof-of-concept, I wrote a little program that starts a VNC server for accessing its GUI. I didn’t need any third-party libraries because the protocol is so basic. I view it with macOS's built-in VNC client. And it nests! So parts of the UI are implemented by other processes that also communicate via VNC, which are spliced in. The source is here: https://github.com/alltom/dirgui It’s based on one of Omar’s ideas for turning a directory of files into a form where programs are buttons and other files are editable text fields. I’m not done experimenting, but I thought this might be a useful epiphany for others! Here’s a video of the basic form functionality:
And here it is launching a separate process to provide the “editor” for one of the files: