]>
Commit | Line | Data |
---|---|---|
b2ac253b | 1 | ## noVNC: HTML VNC Client Library and Application |
5aeb9880 | 2 | |
5911cfd5 | 3 | [![Build Status](https://travis-ci.org/novnc/noVNC.svg?branch=master)](https://travis-ci.org/novnc/noVNC) |
5aeb9880 | 4 | |
5ba1dd78 | 5 | ### Description |
5aeb9880 | 6 | |
b2ac253b PO |
7 | noVNC is both a HTML VNC client JavaScript library and an application built on |
8 | top of that library. noVNC runs well in any modern browser including mobile | |
9 | browsers (iOS and Android). | |
a538be43 | 10 | |
0f725a30 | 11 | Many companies, projects and products have integrated noVNC including |
f901d9c9 | 12 | [OpenStack](http://www.openstack.org), |
0f725a30 SM |
13 | [OpenNebula](http://opennebula.org/), |
14 | [LibVNCServer](http://libvncserver.sourceforge.net), and | |
b55bfcf0 | 15 | [ThinLinc](https://cendio.com/thinlinc). See |
5911cfd5 | 16 | [the Projects and Companies wiki page](https://github.com/novnc/noVNC/wiki/Projects-and-companies-using-noVNC) |
f901d9c9 | 17 | for a more complete list with additional info and links. |
cbb55df0 JM |
18 | |
19 | ### News/help/contact | |
20 | ||
395c6f60 | 21 | The project website is found at [novnc.com](http://novnc.com). |
bc715065 | 22 | Notable commits, announcements and news are posted to |
544106c5 | 23 | [@noVNC](http://www.twitter.com/noVNC). |
5aeb9880 | 24 | |
b55bfcf0 | 25 | If you are a noVNC developer/integrator/user (or want to be) please join the |
544106c5 | 26 | [noVNC discussion group](https://groups.google.com/forum/?fromgroups#!forum/novnc). |
cbb55df0 | 27 | |
b55bfcf0 | 28 | Bugs and feature requests can be submitted via |
45a2717d PO |
29 | [github issues](https://github.com/novnc/noVNC/issues). If you have questions |
30 | about using noVNC then please first use the | |
31 | [discussion group](https://groups.google.com/forum/?fromgroups#!forum/novnc). | |
7c9a7dca PO |
32 | We also have a [wiki](https://github.com/novnc/noVNC/wiki/) with lots of |
33 | helpful information. | |
34 | ||
b55bfcf0 SM |
35 | If you are looking for a place to start contributing to noVNC, a good place to |
36 | start would be the issues that are marked as | |
5911cfd5 | 37 | ["patchwelcome"](https://github.com/novnc/noVNC/issues?labels=patchwelcome). |
b84e6052 PO |
38 | Please check our |
39 | [contribution guide](https://github.com/novnc/noVNC/wiki/Contributing) though. | |
cbb55df0 | 40 | |
b55bfcf0 SM |
41 | If you want to show appreciation for noVNC you could donate to a great non- |
42 | profits such as: | |
43 | [Compassion International](http://www.compassion.com/), | |
44 | [SIL](http://www.sil.org), | |
45 | [Habitat for Humanity](http://www.habitat.org), | |
46 | [Electronic Frontier Foundation](https://www.eff.org/), | |
47 | [Against Malaria Foundation](http://www.againstmalaria.com/), | |
48 | [Nothing But Nets](http://www.nothingbutnets.net/), etc. | |
544106c5 | 49 | Please tweet [@noVNC](http://www.twitter.com/noVNC) if you do. |
68edd7f4 | 50 | |
bc715065 JM |
51 | |
52 | ### Features | |
53 | ||
54 | * Supports all modern browsers including mobile (iOS, Android) | |
b8dd87c7 | 55 | * Supported VNC encodings: raw, copyrect, rre, hextile, tight, tightPNG |
bc715065 JM |
56 | * WebSocket SSL/TLS encryption (i.e. "wss://") support |
57 | * 24-bit true color and 8 bit colour mapped | |
58 | * Supports desktop resize notification/pseudo-encoding | |
59 | * Local or remote cursor | |
60 | * Clipboard copy/paste | |
61 | * Clipping or scolling modes for large remote screens | |
62 | * Easy site integration and theming (3 example themes included) | |
1d728ace | 63 | * Licensed under the [MPL 2.0](http://www.mozilla.org/MPL/2.0/) |
bc715065 | 64 | |
852ba642 JM |
65 | ### Screenshots |
66 | ||
69300d3c | 67 | Running in Firefox before and after connecting: |
600887f0 | 68 | |
69300d3c SM |
69 | <img src="http://novnc.com/img/noVNC-1-login.png" width=400> |
70 | <img src="http://novnc.com/img/noVNC-3-connected.png" width=400> | |
5aeb9880 | 71 | |
b55bfcf0 | 72 | See more screenshots |
544106c5 | 73 | [here](http://novnc.com/screenshots.html). |
852ba642 JM |
74 | |
75 | ||
6de07adb JM |
76 | ### Browser Requirements |
77 | ||
440524f9 | 78 | * Chrome 49, Firefox 44, Safari 10, Opera 36, IE 11, Edge 12, etc. |
6de07adb | 79 | |
440524f9 | 80 | * HTML5 Canvas, WebSockets and Typed Arrays, etc. |
6de07adb | 81 | |
b55bfcf0 SM |
82 | * Fast Javascript Engine: this is not strictly a requirement, but without a |
83 | fast Javascript engine, noVNC might be painfully slow. | |
6de07adb | 84 | |
b55bfcf0 | 85 | * See the more detailed |
5911cfd5 | 86 | [browser compatibility wiki page](https://github.com/novnc/noVNC/wiki/Browser-support). |
d4139a9b JM |
87 | |
88 | ||
6de07adb | 89 | ### Server Requirements |
5aeb9880 | 90 | |
b55bfcf0 SM |
91 | Unless you are using a VNC server with support for WebSockets connections (such |
92 | as [x11vnc/libvncserver](http://libvncserver.sourceforge.net/), | |
f901d9c9 | 93 | [QEMU](http://www.qemu.org/), or |
7d73fdf9 | 94 | [MobileVNC](http://www.smartlab.at/mobilevnc/)), you need to use a |
b55bfcf0 | 95 | WebSockets to TCP socket proxy. There is a python proxy included |
f901d9c9 | 96 | ('websockify'). |
5aeb9880 | 97 | |
5aeb9880 | 98 | |
b89c6db3 | 99 | ### Quick Start |
5aeb9880 | 100 | |
b55bfcf0 SM |
101 | * Use the launch script to start a mini-webserver and the WebSockets proxy |
102 | (websockify). The `--vnc` option is used to specify the location of a running | |
103 | VNC server: | |
b89c6db3 JM |
104 | |
105 | `./utils/launch.sh --vnc localhost:5901` | |
106 | ||
b55bfcf0 SM |
107 | * Point your browser to the cut-and-paste URL that is output by the launch |
108 | script. Enter a password if the VNC server has one configured. Hit the | |
109 | Connect button and enjoy! | |
b89c6db3 JM |
110 | |
111 | ||
b8dd87c7 JM |
112 | ### Authors/Contributors |
113 | ||
f901d9c9 JM |
114 | * Core team: |
115 | * [Joel Martin](https://github.com/kanaka) | |
116 | * [Samuel Mannehed](https://github.com/samhed) (Cendio) | |
117 | * [Peter Åstrand](https://github.com/astrand) (Cendio) | |
118 | * [Solly Ross](https://github.com/DirectXMan12) (Red Hat / OpenStack) | |
41f476a8 | 119 | * [Pierre Ossman](https://github.com/CendioOssman) (Cendio) |
f901d9c9 JM |
120 | |
121 | * Notable contributions: | |
32ec8f32 | 122 | * UI and Icons : Pierre Ossman, Chris Gordon |
b8dd87c7 JM |
123 | * Original Logo : Michael Sersen |
124 | * tight encoding : Michael Tinglof (Mercuri.ca) | |
125 | ||
126 | * Included libraries: | |
b8dd87c7 JM |
127 | * as3crypto : Henri Torgemane (code.google.com/p/as3crypto) |
128 | * base64 : Martijn Pieters (Digital Creations 2), Samuel Sieb (sieb.net) | |
b8dd87c7 | 129 | * DES : Dave Zimmerman (Widget Workshop), Jef Poskanzer (ACME Labs) |
6940936f | 130 | * Pako : Vitaly Puzrin (https://github.com/nodeca/pako) |
7629b03e | 131 | |
b84e6052 PO |
132 | Do you want to be on this list? Check out our |
133 | [contribution guide](https://github.com/novnc/noVNC/wiki/Contributing) and | |
134 | start hacking! |