Real-time collaboration via together.js

The TogetherJS plugin enables real-time collaborative editing of a page. It builds off of Mozilla’s TogetherJS library.

To install it, add 'waliki.togetherjs' after 'waliki' in your settings.INSTALLED_APPS.

_images/together.png

A collaborative session of two users editing a page

The only two things this plugin does is to setup together.js and add a button in the toolbar to initialize a collaborative session.

The default configuration turns off some togetherJS’s features like the audio chat. It’s defined in waliki/togetherjs_edit_extra_script.html and you can override it in your project to extend or replace some config variables.

Currently, it looks like this:

{% load i18n %}

  <script type="text/javascript">

    var TogetherJSConfig_toolName = "{% trans "Collaborate" %}";
    var TogetherJSConfig_dontShowClicks = true;
    var TogetherJSConfig_disableWebRTC = true;
    var TogetherJSConfig_getUserName = function (){
        {% if request.user.is_authenticated %}
          return '{{ request.user.username }}';
        {% else %}
          return null;
        {% endif %}
    };

  </script>

  <script src="https://togetherjs.com/togetherjs-min.js"></script>