anchor.diff:  # Bimgur image:https://travis-ci.org/bimgur/bimgur.svg?branch=master["Build Status", link="https://travis-ci.org/bimgur/bimgur"]
   
  -NOTE: THIS IS NO LONGER VALID AND WILL BE UPDATED SOON (migrating from Scala.js to JavaFX)
  +Activiti-based workflow applications to process bacterial images.
   
  -An Activiti-based workflow application to process bacterial images.
  +## Clients
  +
  +Bimgur offers two client applications:
  +
  +### BimgurFX
  +
  +* A workflow application which tracks image analysis tasks
  +* Allows students to claim an image analysis task, work on it, mark it complete etc.
  +* Allows scientists to track image analysis progress
  +
  +Technically, this is a JavaFX fat client which can be installed on any operating system.
  +
  +### Actitivi Explorer
  +
  +* An administration tool to manage the workflow engine
  +* Allows scientists to create new BimgurFX users
  +* Allows scientist to define new BimgurFX image analysis workflows
  +
  +Technically, this is a web application which can be accessed through a browser.
  +This application is provided out out-of-the-box by the http://activiti.org[Activiti project].
   
   ## Architecture
   
  -Bimgur uses a three-tier architecture:
  +TODO: Image
   
  -* PostgreSQL Database
  -* Apache Tomcat Server
  -* Web Frontend
  +## Project Structure
   
  -Two web applications are available:
  +`bimgur-server`
   
  -* *Activiti Explorer*: Allows to _administrate_ workflows and users
  -* *Bimgur*: Allows to _execute_ workflows (i.e. start processes, work on tasks, etc)
  +* Activiti Explorer and Activiti REST (as WARs)
  +* PostgreSQL configuration
  +* Tomcat configuration
  +* Example image data
   
  -Activiti Explorer is an application provided out-of-the-box by the http://activiti.org[Activiti project].
  -Bimgur is a Scala.js application whose code is contained in this repository.
  -Both, Activiti Explorer and Bimgur, connect to the same PostgreSQL database.
  -Bimgur uses the Activiti REST layer to do so.
  +`bimgur-activiti-custom`
  +
  +* Custom workflow definitions
  +* Bootstrap code (deploy custom workflows upon server start)
  +* Custom service task implementations
   
   ## Development Setup
   
  -Installing a server, a database, and multiple frontend components can be tedious.
  -To simplify things, https://www.docker.com[Docker] allows to create a virtualized installation via script.
  +Installing a server, a database, and deploying custom code can be tedious.
  +To simplify things, https://www.docker.com[Docker] allows to create a virtual installation via script.
   The script is called `Dockerfile` and contains all necessary steps:
   
   * Installs PostgreSQL
  
positive.code: docker run
    -it
    -p 8080:8080
    -v /local/path/to/bimgur/client:/usr/local/tomcat/webapps/bimgur
    -v /local/path/to/bimgur/server/data:/data
    bimgur
  ```
  
  WARNING: Local paths must be specified as *absolute* paths
  
  ### Access Bimgur Web Applications
  
  Both applications can be accessed through any browser:
  
  ```
  http://localhost:8080/activiti-explorer
  http://localhost:8080/bimgur/index-dev.html
  ```
  
  WARNING: On OSX, `localhost` will not work. Run `docker-machine ip` to find out your docker host IP.
  
negative.code: * Deploys Activiti REST
  * Add custom Activiti code (to Explorer and REST app)
  
  A `Dockerfile` allows to build a neat bundle of the complete server machinery, called a _docker image_.
  Running an image creates a _container_, an instance of an image.
  
  Such a container represents "a running server"; only then the client applications can be used:
  
  * BimgurFX can e.g. be started on a student machine and will connect to the server (through a REST API)
  * Activiti Explorer can be started by pointing an browser to the server's IP (details below)
  
  For the steps in the `Dockerfile` to succeed, all custom code first need to be compiled:
  
  ### Compile Artifacts
  
  