DEV Community

Cover image for I Built CloudDesktop — Turn Any Linux VPS Into a Browser-Based Desktop (Free & Open Source)
HorusGod
HorusGod

Posted on

I Built CloudDesktop — Turn Any Linux VPS Into a Browser-Based Desktop (Free & Open Source)

Ever wanted a full Linux desktop in your browser?

No SSH. No PuTTY. No setup headaches.
Just open a tab — and you're in. 👇


🧠 The Problem

I wanted a persistent Linux environment I could reach from anywhere — my phone on the go, a tablet, even a friend's laptop.

Every solution I found was either:

  • 💸 Expensive (cloud desktops cost $$$)
  • 🔧 Painful to set up (VNC configs, firewalls, SSL hell)
  • 📵 Desktop-only (forget using it on mobile)

So I spent weeks and built CloudDesktop from scratch.


🖥️ What it looks like

Here's the login screen:

Login Screen

And once you're in — a full XFCE desktop, in your browser:

Desktop


⚡ One command to rule them all

sudo bash install.sh

That's it. The installer auto-configures:

✅ XFCE desktop + TigerVNC
✅ WebSocket bridge (noVNC)
✅ Node.js + Express backend
✅ Nginx reverse proxy + SSL
✅ Firewall (UFW) + Fail2ban
✅ Systemd services (auto-start on boot)


📱 Works on EVERY device

This was the hardest part to get right.

CloudDesktop is mobile-first:

  • Virtual trackpad cursor (like Microsoft RD Client)
  • Pinch to zoom + scroll
  • On-screen keyboard
  • Auto-resolution on orientation change
  • Fullscreen PWA mode — no browser chrome

Install it as a native app on iOS, Android, Windows, macOS — all from your browser.


🔄 One live session, all devices

All your devices connect to the same live desktop.

Start coding on your PC → pick up exactly where you left off on your phone.
No sync. No cloud storage. Just your desktop, everywhere.


⚙️ Settings & customization

Settings Panel

Adjust resolution, manage sessions, toggle features — all from a clean settings panel inside the browser.


🤖 Claude Code built right in

This is my favorite part.

CloudDesktop has first-class Claude Code support with dedicated dock icons:

Claude Code in Dock

  • Claude Code — launch CLI in a terminal from the dock
  • Claude Fast — one-click sandbox mode for quick tasks
  • Directory Picker — choose your working folder before launching

🔒 Security? Covered.

This runs on the open internet, so security was non-negotiable:

  • 🔐 Bcrypt password hashing
  • 🎟️ JWT session tokens (httpOnly cookies)
  • 📲 TOTP two-factor authentication
  • 🚫 Rate limiting on auth endpoints
  • 🛡️ Fail2ban + UFW firewall
  • 🔒 HTTPS enforced (Let's Encrypt or self-signed)

🏗️ How it works under the hood

Browser ──HTTPS──▸ Nginx ──▸ Express API (auth, files, resolution)
└──▸ WebSocket ──▸ websockify ──▸ VNC (TigerVNC/XFCE)

Simple, battle-tested stack. No magic, no vendor lock-in.


💚 100% Free & Open Source

No hidden fees.
No premium tiers.
No telemetry.
No nonsense.

Fork it. Break it. Make it yours.

👉 GitHub — https://github.com/HorusGod007/CloudDesktop


If this helped you or looks useful — a ⭐ on GitHub means the world and helps others discover it. Drop your questions below, I read every comment! 🙏

Top comments (0)