Skip to main content

GUI for blastdbbuilder

Project description

blastdbbuilder GUI: Building a Customised BLASTn Database

M. Asaduzzaman Prodhan*

DPIRD Diagnostics and Laboratory Services
Department of Primary Industries and Regional Development
31 Cedric St, Stirling WA 6021, Australia
*Correspondence: asad.prodhan@dpird.wa.gov.au; prodhan82@gmail.com

License GPL 3.0 ORCID DOI


Content


Introduction

A BLASTn database provides the essential reference framework for comparing query sequences, forming the backbone of any sequence-based analysis. Accurate results—whether in diagnostics, biosecurity surveillance, microbial studies, evolutionary research, environmental surveys, or functional genomics—depend on a high-quality, well-curated database.

Public databases are comprehensive but rapidly expanding, often containing redundant, low-quality or irrelevant entries. This leads to slower searches and reduced search resolution.

In contrast, a custom database is like a well‑organised library where every book is precisely indexed—smaller in volume, faster to search, and more focused in results.

To simplify this process for end users, blastdbbuilder GUI provides a graphical interface to the proven blastdbbuilder backend, allowing fully reproducible database construction without requiring command‑line interaction.


blastdbbuilder GUI

blastdbbuilder GUI is a Linux graphical front‑end for the blastdbbuilder command‑line toolkit.

It enables users to:

  • download public reference genomes
  • concatenate genome FASTA files
  • build customised BLASTn databases

using an interactive graphical interface.

The GUI internally executes the same backend commands as the original blastdbbuilder toolkit.


Features

  • Graphical selection of genome groups (Archaea, Bacteria, Fungi, Virus, Plants)
  • Graphical execution of genome download, FASTA concatenation and BLAST database building
  • Background execution (safe to close the GUI)
  • Reconnect to running jobs
  • Live log monitoring
  • Safe termination and emergency kill options
  • Directory‑based job management

Computer Setup (Using Conda)

You need:

  • Linux computer, Mac, or Windows using WSL
  • Python ≥ 3.9
  • tkinter
  • Singularity / Apptainer

Example setup:

conda create -n blastdbbuilder python=3.9 -y
conda activate blastdbbuilder
conda install tk
conda install -c bioconda singularity

Installation

Recommended installation (PyPI)

Install using pip:

pip install blastdbbuilder-gui

Launch the GUI:

blastdbbuilder-gui

Optional: Create a Desktop launcher (Linux)

Run once:

blastdbbuilder-gui-desktop

This creates:

~/.local/share/applications/blastdbbuilder-gui.desktop
~/.local/share/icons/hicolor/256x256/apps/blastdbbuilder-gui.png
~/Desktop/blastdbbuilder-gui.desktop

You can then double‑click the Desktop icon to start the GUI.



Figure 1. blastdbbuilder graphical user interface (GUI) automating construction of custom BLASTn reference databases from NCBI RefSeq genomes.


Introduction of the Buttons and their meaning

Browse... Select the working directory.

Detect running job Reconnect to a running job in the selected directory.

Run Starts the selected action.

Stop Gracefully stops the running job.

Force Kill Immediately terminates the job and all related processes.

Clear log view Clears the GUI log window only.

Exit Closes the GUI window.


How to use the GUI locally

  1. Launch the program using the desktop icon or:
blastdbbuilder-gui
  1. Select the working directory through navigating into the directory and DOUBLE-CLICK the folder to select it, and then pressing OK

  2. Choose genome groups:

  • Archaea
  • Bacteria
  • Fungi
  • Virus
  • Plants
  1. Select action:
  • Download only
  • Concat only
  • Build only
  • Run all
  1. Enable Run in background.

  2. Click Run.

Jobs continue running even if the GUI is closed.


How to use the GUI remotely

The GUI is fully supported on remote Linux and HPC systems using X11 forwarding.

  1. From your local computer, connect to the remote machine:
ssh -X user@remote_server
  1. Then open a terminal and run the following command
blastdbbuilder-gui

This will open the blastdbbuilder GUI on your local screen. Then, run the job as you would do it locally. See How to Use the GUI Locally


Checking progress later

  1. Launch the GUI again by double-clicking on the Desktop icon (if you use it locally) or by running blastdbbuilder-gui in a terminal
  2. Click Browse…
  3. Navigate to the same working directory
  4. DOUBLE-CLICK that directory to select it
  5. Click Detect running job

The GUI will reconnect and continue displaying the live log.

This directory selection step is essential. The GUI cannot detect jobs without using the same directory.


Stopping a job

To stop a running job:

  1. Select the same working directory
  2. Click Detect running job
  3. Click Stop

If the job does not stop (for example, a stalled container), click Force Kill.


Citation

If you use this software in your work, please cite:

Prodhan, M. A. (2025). blastdbbuilder: Building a Customised BLASTn Database. https://doi.org/10.5281/zenodo.17394137


Support

For issues, bug reports, or feature requests, please contact:

Asad Prodhan
E-mail: asad.prodhan@dpird.wa.gov.au, prodhan82@gmail.com

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

blastdbbuilder_gui-1.0.5.tar.gz (284.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

blastdbbuilder_gui-1.0.5-py3-none-any.whl (280.5 kB view details)

Uploaded Python 3

File details

Details for the file blastdbbuilder_gui-1.0.5.tar.gz.

File metadata

  • Download URL: blastdbbuilder_gui-1.0.5.tar.gz
  • Upload date:
  • Size: 284.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for blastdbbuilder_gui-1.0.5.tar.gz
Algorithm Hash digest
SHA256 1c58e95ae402765c6355353c48a21eeb435cbf57918f646fdf2d100f07e2ca56
MD5 95c6df644fbdf78a29d8666e7e019e3d
BLAKE2b-256 8b8bc4f1c401009dad38e06624be9a1f03a5403df6d2680f84aab743b9cead18

See more details on using hashes here.

File details

Details for the file blastdbbuilder_gui-1.0.5-py3-none-any.whl.

File metadata

File hashes

Hashes for blastdbbuilder_gui-1.0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 88a5bb6e27b3afb5c0bd2c912070c90439e813f4540b784e2dba2cd250e2d6db
MD5 7ecd223b5ffaa07c84aa85781d2384b0
BLAKE2b-256 1b9c662993c941cfa9db0eeaca3b0046aebbebfdcf0d8445faf760092dcc21ab

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page