Ever since I transformed my former MacBook Pro into a server I had been looking for something quite special: an easy way to remotely access its screen right from a web browser, without installing anything on the client. I finally found it. And it is amazing.
Remotely accessing a computer screen is not new. There are plenty of VNC solutions out there. We've got Team Viewer, AnyDesk, GoToMyPC, Chrome Remote Desktop and about a dozen more that are quite popular. But they all have a common problem: you need to install something on the client to access the server. In all cases you either have to download and install a small software or a browser extension in order to be able to manage the screen of the remote machine.
I can easily have a VNC connection to my Mac server from a Mac client. The built-in Screen Sharing app works great. But what about Windows ? My way of thinking is that if I am using a public computer, I cannot install anything on it. So for a year I carried a USB drive with a portable version of RealVNC. It works great on Windows... except the connection to the Mac Server screen is not encrypted. Not very good. And then, what if I want to connect from a Linux machine? Or a Chromebook?
Ubiquity is key, and I desperatly needed a way to be able to remotely access the screen using modern HTLM5 standards. For years I'd been betting on WebRTC and WebSockets but hardly could find anything substantial.
I looked around and found two main projects. NoVNC and Apache Guacamole. The promises were great. Exactly what I needed. Yet, the setup process is amazingly complex for a non developer user. Take noVNC on MacOS. It requires Websockets on the server, which means installing Websocketify, which means installing Python, which means installing XCode... Seriously, after 7 years and with nearly 80 contributors, why the fuck can't they just make a DMG/EXE/DEB file ? Those half baked projects piss me off, especially when you'd be ready to pay a yearly fee to support them.
Anyways, I kept looking and recently stumbled upon a new project, which is already quite advanced, and, yes, super easy to set up by anybody: DWService.net.
DWService requires to install an agent on the server (Windows, MacOS or Linux, but also Raspberry, Wandboard or Pine64) and to create an account. That account will enable you to manager in one place several remote machines. It is open source, it is free and it is super fast and ultra easy.
Right from a modern web browser, you are able to :
DWService is managed by just one italian guy and it is a very complete solution which offers very good performances on slow connexions. I am simply amazed of what it can accomplish. In fact, shortly after I made a small donation, I offered by service to manage a news blog and contribute to the social efforts. Because you don't often see such an amazing work.
Again, it's free and open source. Go test it yourself: DWService.net. I would not be surprised if we soon learn that Google or any other big companies invest in the project or hire the main developer.