ConPlot is a web-based application for the visualisation of information derived from residue contact predictions in combination with other sources of information, such as secondary structure predictions, transmembrane helical topology, sequence conservation. The plot allows the visual cross-referencing of sequence-based prediction data from multiple sources. The exploitation of this novel cross-referencing method can be useful to potentially expose structural features that would otherwise go undetected. Developed by the the Rigden group at the University of Liverpool, this new tool provides an interactive interface for researchers in the field of protein bioinformatics that are interested in analysing data on a given protein at a glance.
ConPlot is a web-based application that can be used here. Alternatively, it is also possible to use ConPlot locally on your personal machine using the localhost. There are two possible ways to achieve this.
ConPlot is distributed as a docker image on the project's Docker hub repository. To use it, you will need to link it with a Redis container:
$ docker pull filosanrod/conplot:latest
$ docker run --name redis_db -d redis:latest
$ docker run --name conplot_app --link redis_db:redis -e KEYDB_TIMEOUT=3600 -e KEYDB_URL="redis://redis_db:6379" -p 80:80 -d filosanrod/conplot:latest gunicorn app:server --preload --workers=6 --timeout 120 --graceful-timeout 120 --max-requests 5 --log-level=info -b :80
After you set up running the docker container, you will be able to access the app on http://0.0.0.0:80/home
.
It is also possible to use Flask development server to run ConPlot on your localhost.
To do this you will first need to install redis
, which is the cache memory server used by ConPlot.
$ sudo apt update
$ sudo apt install redis-server
Once you have installed redis
, you will need to start the service by running:
$ sudo service redis start
Now you'll need to clone this repository, install the requirements and setup environment variables.
Please note that ConPlot requires at least python 3.6
.
$ git clone https://github.com/rigdenlab/conplot
$ cd conplot
$ python3.6 -m pip install -r requirements.txt
$ echo "KEYDB_URL=0://localhost:6379" > .env
$ echo "KEYDB_TIMEOUT=3600" >> .env
With the last two commands you will also have created an .env
file with a variable named
KEYDB_URL
pointing to the redis server and a KEYDB_TIMEOUT
variable with the session
timeout value. This is the time at which a session expires after inactivity. By default in
www.conplot.org
this has a value of 3600 minutes, but if running locally you can set this
time to any other value. The only thing left to do is to start the Flask development
server on your machine:
$ python3.6 app.py
Now you will be able to access the app on http://127.0.0.1:8050/home
. Please
note that when running locally, ConPlot will not be able to establish a connection
with our database, so all the user account related features will be disabled. Similarly,
you will not be able to get in touch with us using the "Get in touch" tab.