Skip to content
Go to file

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time
  - Record Easily, Share Quickly is a tool, which can record and share the learning procedures gracefully.

The difference is that is only for Terminal/CLI with easier copy-paste, but is for desktop/GUI with more scenes besides Terminal.

Showdesk is based on two famous open source projects, one is noVNC, another is pyvnc2swf.

Fork & Download

Fork our github project: and clone it:

$ git clone
$ cd

Forking is required for later sharing of recorded VNC sessions via sending 'Pull Request'.

If only use locally, just clone the official one:

$ git clone
$ cd

Record & Replay

pyvnc2swf is a fork with noVNC format support, it is also integrated into Showdesk for easier using.


Clone the dependent tools and install the shortcuts:

$ tools/
  • Recorder

  • Player


Click the noVNC REC button on Desktop or issue the following command:

$ tools/

The sessions will be saved to recordings/default/. Before pressing the start button, please configure the vnc server, port, password and also the session title, author, category, tags and description.


Click the noVNC Player button on Desktop or issue the following command:

$ tools/


To share the VNC sessions, simply generate the session and post pages for publishing:

$ tools/

Commit the new generated data in sessions/, _posts/ and recordings/records.js into your own repo and then send a 'Pull Request' to, afterwards, commit the video data in recordings/default and send a 'Pull Request' to Vrecordings.

If want to embed the session in your own web page, just check the permalink address in sessions/, for example:

$ grep permalink sessions/*linux-0.11-lab*
permalink: /50bc346f53a19b4d1f813b428b0b7b49/

And then, embed it with:

<iframe src="" width="100%" marginheight="0" marginwidth="0" frameborder="0" scrolling="no" border="0" allowfullscreen></iframe>

To auto resize the video, use iframeresizer:

<script type="text/javascript" src=""></script>
<script type="text/javascript" src=""></script>
  function resize_iframe() {
      log: false,
      autoResize: true,
      interval: -1,
      minHeight: 300,
      heightCalculationMethod: "lowestElement",

  $(document).ready(function () {
You can’t perform that action at this time.