Skip to content

MPoppinga/ComplexMine

Repository files navigation

ComplexMine

ComplexMine is a small web based tool to find similar patterns in protein complexes. This application serves mainly as a small tech demo for database optimization technologies.

For a production ready feature-rich implementation users should refer to GeoMine on [https://proteins.plus].

This application uses PartitionCache to speed up database queries. For more information refer to [https://github.com/MPoppinga/PartitionCache]

Usage

  • Setting up database.env
  • Download and import dataset
    • Download scripts for AlphaFold datasets are provided

Setup

Requirements

  • PostgreSQL database (or compatible)
    • Alternatively: MySQL or MariaDB, however in our tests PostgreSQL showed better performance
  • Redis (or compatible)
  • Python >= 3.9

Download data

For this demo application we use AlphaFold2 Data, however all PDB-style data sources should work.

For more information on the datasets in the download scripts see [https://alphafold.ebi.ac.uk]

Run for example

download_af_human.sh // (smaller dataset) or download_af_swiss_prot.sh // (larger dataset)

run importer

python importer.py --import_pdb --pdb_folder="data/af_db/"

Start webui

python app.py --cachetype=redis

visit [http://localhost:5000]

Example query

Start PartitionCache Observer

(optional)

pcache-observer --db_backend=postgresql --db_env_file=database.env --cache_backend=redis  --partition_key="complex_data_id" --db-name=alphafold_swissprot  --long_running_query_timeout=300s

Overview

Searchviewview

ResultListView

Resultview

Protein Strucutres: AlphaFold Data Copyright (2022) DeepMind Technologies Limited.

License

This program is licensed under the GPLv3 license. See LICENSE for details.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published