How cmd-oxford/orthotargetdb works
OrthoTargetDB is an interactive protein ortholog/homolog discovery and comparison application. Users provide a seed and outgroup protein (IDs or sequences); the UI invokes the controller, which searches for homologs, gathers sequence and biological annotations, assembles results, and builds a tree for interactive filtering. A separate setup capability acquires and prepares local reference data and search databases. The index identifies controller dependencies, but some implementations and UI-to-core call details were not excerpted; edges below use documented workflows or index references, and omit uncertain links.
Main entry points: controller.py Analysis controller · main.py Setup coordinator · ui.py Shiny interface · homolog_search.py Homolog search
Components 23
Interactive application
- Shiny interface
ortho_target_db/ui.py - App launcher
ortho_target_db/app.py - Result uploads
ortho_target_db/core/manual_upload.py
Search and phylogeny
- Analysis controller
ortho_target_db/core/controller.py - Homolog search
ortho_target_db/core/homolog_search.py - EBI search client
ortho_target_db/core/blast_ebi.py - Local MMseqs
ortho_target_db/core/mmseqs_local.py - Sequence aligner
ortho_target_db/core/aligner.py - Tree builder
ortho_target_db/core/treebuilder.py
Biological annotation
- Protein metadata
ortho_target_db/core/uniprot.py - TrEMBL lookup
ortho_target_db/core/trembl.py - Taxonomy lookup
ortho_target_db/core/taxonomy.py - Species metadata
ortho_target_db/core/species.py - Phenotype metadata
ortho_target_db/core/phenotypes - CITES status
ortho_target_db/core/cites.py - Grant metadata
ortho_target_db/core/grants.py
Data provisioning
- Setup coordinator
ortho_target_db/setup/main.py - Resource downloads
ortho_target_db/setup/get_resources.py - UniProt database
ortho_target_db/setup/build_uniprot_db.py - Taxonomy database
ortho_target_db/setup/build_taxonomy_db.py - Search databases
ortho_target_db/setup/build_mmseqs_db.py - Phenotype database
ortho_target_db/setup/build_alliance_phenotypes_db.py
Other components
- Protein researcher
Connections 21
- Protein researcher → Shiny interface: submits proteins
README.md - App launcher → Shiny interface: starts interface
ortho_target_db/app.py - Shiny interface → Analysis controller: runs analysis
README.md - Shiny interface → Result uploads: loads edited results
ortho_target_db/ui.py - Analysis controller → Homolog search: dispatches searches
ortho_target_db/core/controller.py - Homolog search → EBI search client: queries remotely
ortho_target_db/core/homolog_search.py - Homolog search → Local MMseqs: runs local search
ortho_target_db/core/homolog_search.py - Analysis controller → Protein metadata: fetches sequences
ortho_target_db/core/controller.py - Protein metadata → TrEMBL lookup: uses fallback
ortho_target_db/core/uniprot.py - Analysis controller → Taxonomy lookup: looks up taxonomy
ortho_target_db/core/controller.py - Analysis controller → Species metadata: adds species data
ortho_target_db/core/controller.py - Analysis controller → Phenotype metadata: adds phenotypes
ortho_target_db/core/controller.py - Analysis controller → CITES status: adds conservation
ortho_target_db/core/controller.py - Analysis controller → Grant metadata: adds grant data
ortho_target_db/core/controller.py - Analysis controller → Tree builder: builds phylogeny
ortho_target_db/core/controller.py - Tree builder → Sequence aligner: aligns sequences
ortho_target_db/core/treebuilder.py - Setup coordinator → Resource downloads: downloads inputs
ortho_target_db/setup/main.py - Setup coordinator → UniProt database: builds database
ortho_target_db/setup/main.py - Setup coordinator → Taxonomy database: builds database
ortho_target_db/setup/main.py - Setup coordinator → Search databases: builds indexes
ortho_target_db/setup/main.py - Setup coordinator → Phenotype database: builds database
ortho_target_db/setup/main.py