]>
Commit | Line | Data |
---|---|---|
5ba1dd78 | 1 | ## noVNC: HTML5 VNC Client |
5aeb9880 JM |
2 | |
3 | ||
5ba1dd78 | 4 | ### Description |
5aeb9880 | 5 | |
a538be43 JM |
6 | noVNC is a HTML5 VNC client that runs well in any modern browser |
7 | including mobile browsers (iPhone/iPad and Android). | |
8 | ||
cbb55df0 JM |
9 | More than 16 companies/projects have integrated noVNC into their |
10 | products including [Ganeti Web | |
11 | Manager](http://code.osuosl.org/projects/ganeti-webmgr), | |
12 | [OpenStack](http://www.openstack.org), and | |
13 | [OpenNebula](http://opennebula.org/). See [the Projects and Companies | |
14 | wiki page](https://github.com/kanaka/noVNC/wiki/ProjectsCompanies-using-noVNC) | |
15 | for more complete list. | |
16 | ||
17 | ### News/help/contact | |
18 | ||
bc715065 JM |
19 | Notable commits, announcements and news are posted to |
20 | @<a href="http://www.twitter.com/noVNC">noVNC</a> | |
5aeb9880 | 21 | |
cbb55df0 JM |
22 | If you are a noVNC developer/integrator/user (or want to be) please |
23 | join the <a | |
24 | href="https://groups.google.com/forum/?fromgroups#!forum/novnc">noVNC | |
25 | discussion group</a> | |
26 | ||
27 | Bugs and feature requests can be submitted via [github | |
28 | issues](https://github.com/kanaka/noVNC/issues). If you are looking | |
29 | for a place to start contributing to noVNC, a good place to start | |
30 | would be the issues that I have marked as | |
31 | ["patchwelcome"](https://github.com/kanaka/noVNC/issues?labels=patchwelcome). | |
32 | ||
33 | If you want to show appreciation for noVNC you could buy something off | |
34 | my [Amazon wishlist](http://www.amazon.com/registry/wishlist/XTXFXK39IA8C/?reveal=unpurchased&sort=priority&layout=compact) or you could donate to a great non-profits such as: [Compassion | |
35 | International](http://www.compassion.com/), [SIL](http://www.sil.org), | |
36 | [Habitat for Humanity](http://www.habitat.org), [Electronic Frontier | |
37 | Foundation](https://www.eff.org/), [Against Malaria | |
38 | Foundation](http://www.againstmalaria.com/), [Nothing But | |
39 | Nets](http://www.nothingbutnets.net/), etc. | |
68edd7f4 | 40 | |
bc715065 JM |
41 | |
42 | ### Features | |
43 | ||
44 | * Supports all modern browsers including mobile (iOS, Android) | |
b8dd87c7 | 45 | * Supported VNC encodings: raw, copyrect, rre, hextile, tight, tightPNG |
bc715065 JM |
46 | * WebSocket SSL/TLS encryption (i.e. "wss://") support |
47 | * 24-bit true color and 8 bit colour mapped | |
48 | * Supports desktop resize notification/pseudo-encoding | |
49 | * Local or remote cursor | |
50 | * Clipboard copy/paste | |
51 | * Clipping or scolling modes for large remote screens | |
52 | * Easy site integration and theming (3 example themes included) | |
1d728ace | 53 | * Licensed under the [MPL 2.0](http://www.mozilla.org/MPL/2.0/) |
bc715065 | 54 | |
852ba642 JM |
55 | ### Screenshots |
56 | ||
e5517ecd | 57 | Running in Chrome before and after connecting: |
600887f0 | 58 | |
65db2d82 | 59 | <img src="http://kanaka.github.com/noVNC/img/noVNC-5.png" width=400> <img src="http://kanaka.github.com/noVNC/img/noVNC-7.jpg" width=400> |
5aeb9880 | 60 | |
852ba642 JM |
61 | See more screenshots <a href="http://kanaka.github.com/noVNC/screenshots.html">here</a>. |
62 | ||
63 | ||
6de07adb JM |
64 | ### Browser Requirements |
65 | ||
b29e06f3 JM |
66 | * HTML5 Canvas (with createImageData): Chrome, Firefox 3.6+, iOS |
67 | Safari, Opera 11+, Internet Explorer 9+, etc. | |
6de07adb JM |
68 | |
69 | * HTML5 WebSockets: For browsers that do not have builtin | |
70 | WebSockets support, the project includes | |
71 | <a href="http://github.com/gimite/web-socket-js">web-socket-js</a>, | |
b29e06f3 JM |
72 | a WebSockets emulator using Adobe Flash. iOS 4.2+ has built-in |
73 | WebSocket support. | |
6de07adb | 74 | |
a367e84a JM |
75 | * Fast Javascript Engine: this is not strictly a requirement, but |
76 | without a fast Javascript engine, noVNC might be painfully slow. | |
6de07adb | 77 | |
b29e06f3 | 78 | * I maintain a more detailed browser compatibility list <a |
667ef9ba | 79 | href="https://github.com/kanaka/noVNC/wiki/Browser-support">here</a>. |
d4139a9b JM |
80 | |
81 | ||
6de07adb | 82 | ### Server Requirements |
5aeb9880 | 83 | |
b89c6db3 | 84 | Unless you are using a VNC server with support for WebSockets |
ab44059b JM |
85 | connections (such as [x11vnc/libvncserver](http://libvncserver.sourceforge.net/) or |
86 | [PocketVNC](http://www.pocketvnc.com/blog/?page_id=866)), | |
a367e84a | 87 | you need to use a WebSockets to TCP socket proxy. There is |
bc715065 | 88 | a python proxy included ('websockify'). |
5aeb9880 | 89 | |
5aeb9880 | 90 | |
b89c6db3 | 91 | ### Quick Start |
5aeb9880 | 92 | |
b89c6db3 | 93 | * Use the launch script to start a mini-webserver and the WebSockets |
9df83a39 | 94 | proxy (websockify). The `--vnc` option is used to specify the location of |
b89c6db3 JM |
95 | a running VNC server: |
96 | ||
97 | `./utils/launch.sh --vnc localhost:5901` | |
98 | ||
99 | * Point your browser to the cut-and-paste URL that is output by the | |
100 | launch script. Enter a password if the VNC server has one | |
101 | configured. Hit the Connect button and enjoy! | |
102 | ||
103 | ||
9df83a39 | 104 | ### Other Pages |
5aeb9880 | 105 | |
57044a3c JM |
106 | * [Encrypted Connections](https://github.com/kanaka/websockify/wiki/Encrypted-Connections). How to setup websockify so that you can use encrypted connections from noVNC. |
107 | ||
108 | * [Advanced Usage](https://github.com/kanaka/noVNC/wiki/Advanced-usage). Starting a VNC server, advanced websockify usage, etc. | |
a4807656 | 109 | |
667ef9ba | 110 | * [Integrating noVNC](https://github.com/kanaka/noVNC/wiki/Integration) into existing projects. |
a4807656 | 111 | |
667ef9ba | 112 | * [Troubleshooting noVNC](https://github.com/kanaka/noVNC/wiki/Troubleshooting) problems. |
b89c6db3 | 113 | |
0af07711 | 114 | |
b8dd87c7 JM |
115 | ### Authors/Contributors |
116 | ||
f2a495c9 | 117 | * noVNC : Joel Martin (github.com/kanaka) |
cbb55df0 | 118 | * UI and Icons : Chris Gordon |
b8dd87c7 JM |
119 | * Original Logo : Michael Sersen |
120 | * tight encoding : Michael Tinglof (Mercuri.ca) | |
121 | ||
122 | * Included libraries: | |
123 | * web-socket-js : Hiroshi Ichikawa (github.com/gimite/web-socket-js) | |
124 | * as3crypto : Henri Torgemane (code.google.com/p/as3crypto) | |
125 | * base64 : Martijn Pieters (Digital Creations 2), Samuel Sieb (sieb.net) | |
126 | * jsunzip : Erik Moller (github.com/operasoftware/jsunzip), | |
127 | * tinflate : Joergen Ibsen (ibsensoftware.com) | |
128 | * DES : Dave Zimmerman (Widget Workshop), Jef Poskanzer (ACME Labs) | |
129 | ||
130 |