Guacamole bestaat uit twee delen. Het client-gedeelte is geschreven in HTML5 en JavaScript, en draait in elke browser die het HTML5-canvas element ondersteunt. Op dit moment zijn dat de recentste versies van Mozilla Firefox, Google Chrome, Safari en Opera. Het voordeel voor de gebruiker is dat hij geen afzonderlijke VNC-client meer nodig heeft, en dus vanaf een willekeurige computer met ondersteunde browser zijn desktop kan openen.

Aan de serverkant moet uiteraard een VNC-server voor X draaien, zoals X11vnc. Aangezien aan de serverkant van Guacamole de VNC-verbindingsinformatie naar XML vertaald wordt in een VNC-naar-XML proxy, die geschreven is in Java, vereist het programma een Java-servletcontainer zoals Apache Tomcat. De website van het project bevat instructies voor een basisopstelling in Linux, maar andere platforms zijn ook ondersteund.

Guacamole ondersteunt het scrollwieltje van de muis, het klembord, internationale toetsenborden en (indien ondersteund door de VNC-server) client-side cursors en CopyRect-encoding. De performance is bijna even snel als een normale VNC-verbinding.

Bron: Techworld