whatisgithub

What is novnc?

trycua/novnc — explained in plain English

Analysis updated 2026-08-02 · repo last pushed 2026-01-23

4JavaScriptAudience · developerComplexity · 3/5QuietSetup · moderate

In one sentence

noVNC lets you view and control a remote computer's desktop from any web browser, no special app needed. It works on both computers and mobile devices.

Mindmap

mindmap
  root((repo))
    What it does
      Remote desktop in browser
      Works on mobile devices
      No install needed
    Tech stack
      JavaScript
      WebSockets
      websockify proxy
    Use cases
      Cloud platform dashboards
      Remote IT support
      Access office computer remotely
    Features
      Clipboard copy and paste
      Touch gestures for mobile
      Multiple auth methods
    Audience
      Platform builders
      IT support teams
      Remote workers

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Build a cloud platform dashboard where users can interact with virtual machines through a browser.

USE CASE 2

Offer remote IT support by letting technicians view client screens from any browser.

USE CASE 3

Access your office computer from a personal laptop or phone while traveling.

USE CASE 4

Embed remote desktop access into a larger product using the JavaScript library.

What is it built with?

JavaScriptWebSocketswebsockify

How does it compare?

trycua/novncamirmahdavi2023/d1-adminanil-matcha/open-poe-ai
Stars444
LanguageJavaScriptJavaScriptJavaScript
Last pushed2026-01-232026-06-25
MaintenanceQuietMaintained
Setup difficultymoderateeasymoderate
Complexity3/52/53/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

If your remote server doesn't support WebSockets natively, you'll need to also set up the websockify proxy tool to bridge the connection.

The license is not specified in the explanation provided.

So what is it?

noVNC lets you access and control a remote computer right from your web browser, without needing to install any special software. Normally, to view another computer's screen over a network, you'd use a tool called VNC that requires a dedicated desktop application. This project brings that same capability into a browser tab, and it works on both regular computers and mobile devices like phones and tablets. Behind the scenes, it translates the standard VNC communication protocol into web-friendly technology that browsers already understand. One key difference from a traditional VNC client is that it uses WebSockets to maintain a live connection between the browser and the remote machine. If your existing remote server doesn't natively support WebSockets, a companion proxy tool called websockify bridges the gap. The project supports a wide range of authentication methods, image compression formats, and quality-of-life features like clipboard copy/paste, local cursor rendering, and touch gestures for mobile screens. This tool is primarily aimed at people building platforms where users need remote access to desktops. For example, cloud computing platforms like OpenStack and OpenNebula use it so their users can interact with virtual machines directly through a web dashboard. A company offering remote IT support could use it to let technicians view a client's screen from any browser. It is also useful for anyone who wants to access their own office computer from a personal laptop or phone while traveling. The project is built to be flexible. You can use it as a standalone web application, or developers can embed the underlying JavaScript library directly into a larger product. It also offers a packaged installation method for Linux systems that can run multiple connection services at once, routing different browser ports to different remote machines.

Copy-paste prompts

Prompt 1
How do I embed noVNC into my existing web application to give users remote desktop access in a browser tab?
Prompt 2
I have a VNC server running but it doesn't support WebSockets. How do I set up websockify as a proxy so noVNC can connect to it?
Prompt 3
Help me configure noVNC for mobile devices with touch gestures and local cursor rendering enabled.
Prompt 4
How do I run multiple noVNC connection services on Linux, each routing a different browser port to a different remote machine?

Frequently asked questions

What is novnc?

noVNC lets you view and control a remote computer's desktop from any web browser, no special app needed. It works on both computers and mobile devices.

What language is novnc written in?

Mainly JavaScript. The stack also includes JavaScript, WebSockets, websockify.

Is novnc actively maintained?

Quiet — no commits in 6-12 months (last push 2026-01-23).

What license does novnc use?

The license is not specified in the explanation provided.

How hard is novnc to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is novnc for?

Mainly developer.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.