DEV Community

So I made a WebRTC powered VNC client in Vue/Rust 🦀

Working on the youtube issues...

I'm taking a little break while looking for my next perfect role, so I've been exploring new solutions... to my problems.

I have a cute little "mini-pc" I use a bit like a home server; well actually I have quiet a few computers mostly old, but alas my issue is I only have one external monitor. 😭

This made me sad, some of them are laptops and that's not a huge issue, excepting my 2012 macbook air, which I love and happens to run Sonoma. Ask me how if you're interested.

The main reason I like running one or two maybe three computers as a coder, is offloading tasks, or using the others to do some intensive task while keeping my MacBook Pro agile to any task.

I used to and still do use and recommend Barrier for sharing a mouse and clipboard and keypresses across OS's. It works for Mac, Windows, and Linux. They have a fork input-leap... it doesn't work, and there is a paid on from the same original developers called Synergy that works well too.

I thought maybe there is an easier way and maybe I can use my tablet or phone to get in on the fun.

So I stared trying VNC and RDP or Remote Desktop solutions. For mac one is built in go to Finder then click the "Go" menu connect to server enter your remote details like so:
Image description

It was kinda sluggish, and my cursor disappeared and some other like nits. I tried a plethora more Chrome Remote Desktop, Windows RDP, and VNCViewer. meh 🤷‍♂️

I had 3 hours so I decided to fix this. I implemented a Native Application for all platforms, Mac, Windows, Linux, Android, and iOS. Powered by a Rust container using Tauri (alpha) and some novnc tech that uses WebRTC protocols rather than traditional. The result is a very snappy way to open another computer, share clipboards, mouse, do anything really.

Here's an iPad example (native app)

The same on Android my actual Pixel 5 phone (native app)

and a macOS native one (native app)

I could do windows too but, next time.

I plan to refactor the code a lot before open sourcing it so this is a sneak peak!

Cheerio That's all folks.

Top comments (0)