]>
Commit | Line | Data |
---|---|---|
1 | ## noVNC: HTML VNC Client Library and Application | |
2 | ||
3 | [![Build Status](https://travis-ci.org/novnc/noVNC.svg?branch=master)](https://travis-ci.org/novnc/noVNC) | |
4 | ||
5 | ### Description | |
6 | ||
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). | |
10 | ||
11 | Many companies, projects and products have integrated noVNC including | |
12 | [OpenStack](http://www.openstack.org), | |
13 | [OpenNebula](http://opennebula.org/), | |
14 | [LibVNCServer](http://libvncserver.sourceforge.net), and | |
15 | [ThinLinc](https://cendio.com/thinlinc). See | |
16 | [the Projects and Companies wiki page](https://github.com/novnc/noVNC/wiki/Projects-and-companies-using-noVNC) | |
17 | for a more complete list with additional info and links. | |
18 | ||
19 | ### Table of Contents | |
20 | ||
21 | - [News/help/contact](#newshelpcontact) | |
22 | - [Features](#features) | |
23 | - [Screenshots](#screenshots) | |
24 | - [Browser Requirements](#browser-requirements) | |
25 | - [Server Requirements](#server-requirements) | |
26 | - [Quick Start](#quick-start) | |
27 | - [Integration and Deployment](#integration-and-deployment) | |
28 | - [Authors/Contributors](#authorscontributors) | |
29 | ||
30 | ### News/help/contact | |
31 | ||
32 | The project website is found at [novnc.com](http://novnc.com). | |
33 | Notable commits, announcements and news are posted to | |
34 | [@noVNC](http://www.twitter.com/noVNC). | |
35 | ||
36 | If you are a noVNC developer/integrator/user (or want to be) please join the | |
37 | [noVNC discussion group](https://groups.google.com/forum/?fromgroups#!forum/novnc). | |
38 | ||
39 | Bugs and feature requests can be submitted via | |
40 | [github issues](https://github.com/novnc/noVNC/issues). If you have questions | |
41 | about using noVNC then please first use the | |
42 | [discussion group](https://groups.google.com/forum/?fromgroups#!forum/novnc). | |
43 | We also have a [wiki](https://github.com/novnc/noVNC/wiki/) with lots of | |
44 | helpful information. | |
45 | ||
46 | If you are looking for a place to start contributing to noVNC, a good place to | |
47 | start would be the issues that are marked as | |
48 | ["patchwelcome"](https://github.com/novnc/noVNC/issues?labels=patchwelcome). | |
49 | Please check our | |
50 | [contribution guide](https://github.com/novnc/noVNC/wiki/Contributing) though. | |
51 | ||
52 | If you want to show appreciation for noVNC you could donate to a great non- | |
53 | profits such as: | |
54 | [Compassion International](http://www.compassion.com/), | |
55 | [SIL](http://www.sil.org), | |
56 | [Habitat for Humanity](http://www.habitat.org), | |
57 | [Electronic Frontier Foundation](https://www.eff.org/), | |
58 | [Against Malaria Foundation](http://www.againstmalaria.com/), | |
59 | [Nothing But Nets](http://www.nothingbutnets.net/), etc. | |
60 | Please tweet [@noVNC](http://www.twitter.com/noVNC) if you do. | |
61 | ||
62 | ||
63 | ### Features | |
64 | ||
65 | * Supports all modern browsers including mobile (iOS, Android) | |
66 | * Supported VNC encodings: raw, copyrect, rre, hextile, tight, tightPNG | |
67 | * Supports scaling, clipping and resizing the desktop | |
68 | * Local cursor rendering | |
69 | * Clipboard copy/paste | |
70 | * Licensed mainly under the [MPL 2.0](http://www.mozilla.org/MPL/2.0/), see | |
71 | [the license document](LICENSE.txt) for details | |
72 | ||
73 | ### Screenshots | |
74 | ||
75 | Running in Firefox before and after connecting: | |
76 | ||
77 | <img src="http://novnc.com/img/noVNC-1-login.png" width=400> | |
78 | <img src="http://novnc.com/img/noVNC-3-connected.png" width=400> | |
79 | ||
80 | See more screenshots | |
81 | [here](http://novnc.com/screenshots.html). | |
82 | ||
83 | ||
84 | ### Browser Requirements | |
85 | ||
86 | noVNC uses many modern web technologies so a formal requirement list is | |
87 | not available. However these are the minimum versions we are currently | |
88 | aware of: | |
89 | ||
90 | * Chrome 49, Firefox 44, Safari 10, Opera 36, IE 11, Edge 12 | |
91 | ||
92 | ||
93 | ### Server Requirements | |
94 | ||
95 | noVNC follows the standard VNC protocol, but unlike other VNC clients it does | |
96 | require WebSockets support. Many servers include support (e.g. | |
97 | [x11vnc/libvncserver](http://libvncserver.sourceforge.net/), | |
98 | [QEMU](http://www.qemu.org/), and | |
99 | [MobileVNC](http://www.smartlab.at/mobilevnc/)), but for the others you need to | |
100 | use a WebSockets to TCP socket proxy. noVNC has a sister project | |
101 | [websockify](https://github.com/novnc/websockify) that provides a simple such | |
102 | proxy. | |
103 | ||
104 | ||
105 | ### Quick Start | |
106 | ||
107 | * Use the launch script to automatically download and start websockify, which | |
108 | includes a mini-webserver and the WebSockets proxy. The `--vnc` option is | |
109 | used to specify the location of a running VNC server: | |
110 | ||
111 | `./utils/launch.sh --vnc localhost:5901` | |
112 | ||
113 | * Point your browser to the cut-and-paste URL that is output by the launch | |
114 | script. Hit the Connect button, enter a password if the VNC server has one | |
115 | configured, and enjoy! | |
116 | ||
117 | ||
118 | ### Integration and Deployment | |
119 | ||
120 | Please see our other documents for how to integrate noVNC in your own software, | |
121 | or deploying the noVNC application in production environments: | |
122 | ||
123 | * [Embedding](docs/EMBEDDING.md) - For the noVNC application | |
124 | * [Library](docs/LIBRARY.md) - For the noVNC JavaScript library | |
125 | ||
126 | ||
127 | ### Authors/Contributors | |
128 | ||
129 | * Core team: | |
130 | * [Joel Martin](https://github.com/kanaka) | |
131 | * [Samuel Mannehed](https://github.com/samhed) (Cendio) | |
132 | * [Peter Åstrand](https://github.com/astrand) (Cendio) | |
133 | * [Solly Ross](https://github.com/DirectXMan12) (Red Hat / OpenStack) | |
134 | * [Pierre Ossman](https://github.com/CendioOssman) (Cendio) | |
135 | ||
136 | * Notable contributions: | |
137 | * UI and Icons : Pierre Ossman, Chris Gordon | |
138 | * Original Logo : Michael Sersen | |
139 | * tight encoding : Michael Tinglof (Mercuri.ca) | |
140 | ||
141 | * Included libraries: | |
142 | * base64 : Martijn Pieters (Digital Creations 2), Samuel Sieb (sieb.net) | |
143 | * DES : Dave Zimmerman (Widget Workshop), Jef Poskanzer (ACME Labs) | |
144 | * Pako : Vitaly Puzrin (https://github.com/nodeca/pako) | |
145 | ||
146 | Do you want to be on this list? Check out our | |
147 | [contribution guide](https://github.com/novnc/noVNC/wiki/Contributing) and | |
148 | start hacking! |