GitHunt

Tom and the Toothfairies

spacemacs badge build status badge

Note: this document is written in Markdown. While it can be easily read in a
text editor, we recommend viewing our documentation on
Github
for
maximum convenience - click-able links for example

This file contains instructions on how to install and run the project, as well
as an overview of the project's design. The target platform is Ubuntu 16.04.

At the time of writing the current release is 2.0

Installing Dependencies

This project uses Docker and Docker Compose. An installation script,
install-docker.sh, is provided for Ubuntu 16.04.

$ ./install-docker.sh

For platforms other than Ubuntu, follow the installation instructions on
the Docker Website. Note - on other platforms, sudo is not
required for Docker commands.

You can test your Docker installation by running Docker's built in hello-world:

$ sudo docker run hello-world

Running

The project can be run with Docker Compose:

$ sudo docker-compose up -d

The system is then accessible at localhost:4000.

To stop the system, run the following command

$ sudo docker-compose down

Features

Release 2

The feature list for Release 2 can be found in the Release 2 features
document
.

Release 1

The feature list for Release 1 can be found in the Release 1 features
document
.

Change Log

Changes to the project are recorded in the change log.

Architecture Overview

The system is split into three distinct services; Panacea, Asclepius and Chiron.
The auxiliary service, Athloi, is used for automated testing.
They each run inside a Docker container. The containers can be easily managed
using docker-compose as mentioned earlier.

Panacea

Panacea is responsible for the UI and PML analysis. It is a web application that
serves the UI and exposes an API for uploading PML files for analysis.

More information about Panacea can be found in the Panacea README.

Chiron

Chiron houses the DINTO data. The data is compiled into a triple store. Chiron
exposes a HTTP API for querying the triple store.

More information about Chiron can be found in the Chiron README.

Asclepius

Asclepius acts as an intermediary between Panacea and Chiron. It accepts
requests to identify DDIs from Panacea, creates the necessary SPARQL query and
passes it on to Chiron.

More information about Asclepius can be found in the Asclepius README.

Athloi

Athloi is the service that runs our end to end tests.

More information about Athloi can be found in the Athloi README.

Building Manually

Docker Compose will pull down the required versions of each service from Docker
Hub
when you run the project. If for some reason you wish to build these
services manually, instructions for doing so can be
found in the manual build documentation.

Languages

Elixir51.4%JavaScript16.1%Erlang7.8%Python7.8%Ruby6.4%HTML3.9%Gherkin3.5%CSS1.9%Shell1.3%

Contributors

Created January 31, 2017
Updated October 9, 2025