NPLinker Web Application

This is the NPLinker web application, developed with Plotly Dash. It enables interactive visualization of NPLinker predictions and is designed to be run locally or in a containerized environment.

13
contributors
Get started
64 commitsLast commit ≈ 7 days ago4 stars2 forks

Cite this software

Description

NPLinker Web Application

DOI

👉 Webapp Live Demo

The NPLinker web application, built with Plotly Dash, provides an interactive interface for visualizing NPLinker predictions.

Online Demo

A live demo of the NPLinker webapp is automatically deployed to Render from main branch. You can try out the webapp directly in your browser here.

Getting Started with Demo Data

The webapp includes a convenient "Load Demo Data" button that automatically loads some sample data for you to try. Simply:

  1. Open the live demo link
  2. Click the "Load Demo Data" button below the file uploader
  3. The app will automatically download and process the sample dataset from tests/data/mock_obj_data.pkl
  4. Start exploring natural product linking features!

This demo web server is intended only for lightweight demo purposes. For full functionality, including large-scale data processing and persistent storage, please install the application locally or via Docker as described below.

Using the webapp

Input Data

The webapp accepts data generated by NPLinker and saved as described in the NPLinker quickstart section. For testing purposes, a small sample dataset is provided in tests/data/mock_obj_data.pkl that can be used to try out the webapp.

Please note that links between genomic and metabolomic data must currently be computed using the NPLinker API separately, as this functionality is not yet implemented in the webapp (see issue #19). If no links are present in your data, the scoring table will be disabled.

Filtering Table Data

The "Candidate Links" tables support data filtering to help you focus on relevant results. You can enter filter criteria directly into each column’s filter cell by hovering over the cell.

For numeric columns like "Average Score" or "# Links":

  • 34.6 or = 34.6 (exact match)
  • > 30 (greater than)
  • <= 50 (less than or equal to)

For text columns like "BGC Classes" or "MiBIG IDs":

  • Polyketide or contains Polyketide (contains text)
  • = Polyketide (exact match)

Multiple filters can be applied simultaneously across different columns to narrow down results.

For a full list of supported filter operators, see the official Plotly documentation.

Installation

Before installing NPLinker webapp, ensure you have:

You can install and run the NPLinker webapp in two ways: directly on your local machine or using Docker.

Option 1: Local Installation (using Conda)

Follow these steps to install the application directly on your system:

  1. Clone the repository

    git clone https://github.com/NPLinker/nplinker-webapp.git
    cd nplinker-webapp
    
  2. Set up a conda environment

     # Create a new conda environment with Python 3.10
     conda create -n nplinker-webapp python=3.10
    
     # Activate the environment
     conda activate nplinker-webapp
    
  3. Install dependencies

    pip install -e .
    
  4. Run the application

    python app/main.py
    
  5. Access the webapp

    Open your web browser and navigate to http://0.0.0.0:8050/

Option 2: Docker Installation

Using Docker is the quickest way to get started with NPLinker webapp. Make sure you have Docker installed on your system before proceeding:

  1. Pull the Docker image

    docker pull ghcr.io/nplinker/nplinker-webapp:latest
    
  2. Run the container

    docker run -p 8050:8050 ghcr.io/nplinker/nplinker-webapp:latest
    
  3. Access the webapp

    Open your web browser and navigate to http://0.0.0.0:8050/

Keywords
Programming languages
  • Python 99%
  • CSS 1%
License
</>Source code
Packages
ghcr.io

Contributors

GC
Giulia Crocioni
Netherlands eScience Center
SR
Simon Rogers
AR
Andrew Ramsay
KD
Katherine Duncan
Jv
Justin van
GH
Grímur Hjörleifsson
SS
Sylvia Soldatou
FH
Florian Huber
JW
Joe Wandy
RD
Ronan Daly
JL
Joris Louwen

Related projects

NPLinker

A community-supported workflow connecting microbial genes, and organisms to their molecular products

Updated 8 months ago
In progress

Related software

NPLinker

NP

Microbial natural products data mining by integrating genomics and metabolomics data

Updated 6 months ago
5