Skip to content

An interactive radial tree for functional hierarchies and omics data visualization

License

Notifications You must be signed in to change notification settings

yamada-lab/functree-ng

Repository files navigation

FuncTree 2

MIT License

FuncTree is a web application that allows users to map omics data onto a pre-defined radial tree (e.g. based on the KEGG brite functional hierarchy) to help them quickly and comprehensively understand the functional potential of their data, and to develop further hypothesis and scientific insights.

Installation

Clone this repository and change directory to functree-ng:

$ git clone --recursive https://github.com/yamada-lab/functree-ng.git
$ cd functree-ng

Building and running the application

Using Docker and Docker Compose (preferred and supported way)

Execute the command below. docker-compose will automatically set up Docker containers:

$ docker-compose build
$ docker-compose up

Then open http://localhost:8080 in your web browser.

Automatic transpilation, for dev mode only (optional)

To enable automatic transpilation of ECMAScript and SCSS in dev mode, enter the docker instance

docker exec -it functree-ng_app_1 /bin/bash

then issue the following commands

yarn babel:watch
yarn sass:watch

Manual installation (unsupported, use at your own risk)

Requirements
  • Python 3
  • Node.js
  • MongoDB

Install dependencies and build the application:

$ pip3 install -r requirements.txt
$ npm install yarn --global
$ yarn run install-depends
$ yarn run install-devDepends
$ yarn run bower install
$ yarn run build

Start up the application:

$ uwsgi --ini uwsgi.ini

Then open http://localhost:8080 in your web browser.

Configuration

To configure the behavior of the application, create instance/config.py with the same format as functree/config.py.

Loading of functional annotations from external sources (optional)

  1. Download generate-external-mapping.sh and edit LIST_HOME to match the location of your local KEGG distribution.
  2. Run the script to generate the external_annotation.map file.
  3. Add external_annotation.map to /app/functree/static/data/ortholog_mapping/ (See the docker-compose.yml services:app:volumes for details)
  4. Log into the admin console (e.g. http://localhost:8080/admin), then click the 'Update annotation mapping' link.

Publications

  • Darzi Y, Yamate Y, Yamada T. FuncTree2: an interactive radial tree for functional hierarchies and omics data visualization. Bioinformatics, btz245. 20 April 2019; DOI: 10.1093/bioinformatics/btz245; PubMed PMID: 31004476.

License

FuncTree 2 is released under the MIT License.