program for scientific collaboration and teaching over Internet
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

Third iteration of MathPump

This version has (hopefully) improved reliability, and does not use JavaFX. Instead, it uses ioqml for GUI.


MathPump is a simplistic remote collaboration tool for mathematicians and other researchers. It could be particularly useful for those researchers who tend to think by drawing pictures (theoretical physics).


Bob uses Inkscape to draw a picture, which is incrementally transmitted to the Alice's computer so she can look at it. She answers by drawing her own picture, which is transmitted to Bob. Transmission happens every time the svg file is saved.

The transmission requires a special server. That is, both Bob and Alice can have their machines under a firewall. But the server (run by Charlie) has to have some ports open. We recomment that Charlie buy a cheap VPS. The server is the standard RabbitMQ. This README only explains how to setup the client (Alice and Bob). If you are Charlie, please read docs/

Wacom device

A Wacom device is recommended. As they change rapidly, some present difficulties with Linux. See, for example, my writeup on CTL-480, similar steps should theoretically work also for other models. It is useful to map one of Wacom buttons to Save File in Inkscape.

Client setup

This manual is for Linux. The installation on Windows should be completely analogous.


  1. Install JDK of Java 8. For example, on Debian:

    aptitude install openjdk-8-jdk

  2. Install sbt

  3. Install git

  4. Install Inkscape

  5. Install ioqml

  6. Make sure that the directory ~/.local/bin/ exists and is on the executable PATH


Then execute the following commands:

git clone
cd mathpump3

This actually takes some time, depending on your Internet connection. Maybe 20 min or so.

Configuration and running

cd example/

See example/

You will need three things from Charlie:

  1. trustStore (a file)
  2. password
  3. truststore passphrase