Sign inSign up

bbeckleyhub/pseudoscope

By bbeckleyhub

β€’Updated about 2 months ago

🧬 PseudoScope – Docker Image

Image
Data science
0

985

bbeckleyhub/pseudoscope repository overview

⁠🧬 PseudoScope – Docker Image

Complete MLST, serotyping, AMR, virulence & visualisation for Pseudomonas aeruginosa – in minutes

Docker Pulls Docker Image Size License GitHub Stars


β πŸš€ Quick Start

# Pull the image
docker pull bbeckleyhub/pseudoscope:latest

# Run analysis on all .fna files in current directory
docker run --rm \
  -v $(pwd):/data \
  -w /data \
  bbeckleyhub/pseudoscope:latest \
  -i "*.fna" -o results --threads 4

Note: The image includes pre‑installed ABRicate and AMRfinderPlus databases – no extra setup needed. Just pull and run!


β πŸ“‹ Table of Contents


β πŸ“– Usage Examples

⁠Basic single genome analysis
docker run --rm \
  -v $(pwd):/data \
  -w /data \
  bbeckleyhub/pseudoscope:latest \
  -i genome.fna -o results
⁠Batch processing with glob pattern
docker run --rm \
  -v $(pwd):/data \
  -w /data \
  bbeckleyhub/pseudoscope:latest \
  -i "*.fna" -o batch_results --threads 16
⁠Skip specific modules (faster test run)
docker run --rm \
  -v $(pwd):/data \
  -w /data \
  bbeckleyhub/pseudoscope:latest \
  -i "*.fna" -o quick_test --skip-amr --skip-abricate --skip-viz
⁠Keep temporary files for debugging
docker run --rm \
  -v $(pwd):/data \
  -w /data \
  bbeckleyhub/pseudoscope:latest \
  -i "*.fna" -o debug_run --keep-temp
⁠Update AMR database (if needed)
docker run --rm bbeckleyhub/pseudoscope:latest --update-amr-db

β βš™οΈ Command‑line Options

FlagDescription
-i, --inputInput FASTA file(s) – supports glob patterns (e.g., "*.fna")
-o, --outputOutput directory for all results
-t, --threadsNumber of CPU threads (default: 2)
--quietSuppress all non‑error output
--versionShow version and exit
--update-amr-dbUpdate AMRfinderPlus database and exit
--skip-qcSkip FASTA QC
--skip-mlstSkip MLST
--skip-pastSkip PAST serotyping
--skip-abricateSkip ABRicate
--skip-amrSkip AMRfinderPlus
--skip-summarySkip ultimate reporter
--skip-vizSkip visualisation dashboard
--keep-tempKeep temporary directories (debugging)

Supported FASTA formats: .fna, .fasta, .fa, .fn


β πŸ“ Output Structure

Below is the actual output tree generated by PseudoScope (from a real run). All paths are relative to your specified output directory (-o).

results/
β”œβ”€β”€ fasta_qc_results/                          # QC per sample + summary
β”‚   β”œβ”€β”€ {sample}/
β”‚   β”‚   β”œβ”€β”€ {sample}_fasta_qc_report.html
β”‚   β”‚   └── {sample}_fasta_qc_report.json
β”‚   β”œβ”€β”€ PseudoScope_FASTA_QC_summary.html
β”‚   β”œβ”€β”€ PseudoScope_FASTA_QC_summary.json
β”‚   └── PseudoScope_FASTA_QC_summary.tsv
β”‚
β”œβ”€β”€ mlst_results/                              # MLST per sample + summary
β”‚   β”œβ”€β”€ {sample}/
β”‚   β”‚   β”œβ”€β”€ mlst_raw_output.txt
β”‚   β”‚   β”œβ”€β”€ mlst_report.html
β”‚   β”‚   β”œβ”€β”€ mlst_report.json
β”‚   β”‚   β”œβ”€β”€ mlst_report.tsv
β”‚   β”‚   └── mlst_report.txt
β”‚   β”œβ”€β”€ mlst_summary.csv
β”‚   β”œβ”€β”€ mlst_summary.html
β”‚   └── mlst_summary.json
β”‚
β”œβ”€β”€ past_results/                              # PAST serotyping per sample + summary
β”‚   β”œβ”€β”€ {sample}/
β”‚   β”‚   β”œβ”€β”€ {sample}.blastn.tsv
β”‚   β”‚   β”œβ”€β”€ {sample}.details.tsv
β”‚   β”‚   β”œβ”€β”€ {sample}.tsv
β”‚   β”‚   β”œβ”€β”€ past_report.html
β”‚   β”‚   β”œβ”€β”€ past_report.json
β”‚   β”‚   β”œβ”€β”€ past_report.tsv
β”‚   β”‚   β”œβ”€β”€ past_report.txt
β”‚   β”‚   └── pasty_run.log
β”‚   β”œβ”€β”€ past_summary.csv
β”‚   β”œβ”€β”€ past_summary.html
β”‚   └── past_summary.json
β”‚
β”œβ”€β”€ pseudo_abricate_results/                   # ABRicate per sample & per database summaries
β”‚   β”œβ”€β”€ {sample}/
β”‚   β”‚   β”œβ”€β”€ abricate_{db}_report.html   (for each database: argannot, bacmet2, card, ecoh, ecoli_vf, megares, ncbi, plasmidfinder, resfinder, vfdb)
β”‚   β”‚   β”œβ”€β”€ abricate_{db}.txt
β”‚   β”‚   └── {sample}_comprehensive_abricate_report.html
β”‚   β”œβ”€β”€ pseudo_abricate_master_summary.json
β”‚   β”œβ”€β”€ pseudo_{db}_summary_report.html
β”‚   β”œβ”€β”€ pseudo_{db}_summary.json
β”‚   └── pseudo_{db}_abricate_summary.tsv
β”‚
β”œβ”€β”€ pseudo_amrfinder_results/                  # AMRfinder per sample + mutation summary
β”‚   β”œβ”€β”€ {sample}/
β”‚   β”‚   β”œβ”€β”€ {sample}_amrfinder_report.html
β”‚   β”‚   β”œβ”€β”€ {sample}_amrfinder_report.json
β”‚   β”‚   β”œβ”€β”€ {sample}_amrfinder_summary.json
β”‚   β”‚   β”œβ”€β”€ {sample}_amrfinder.txt
β”‚   β”‚   β”œβ”€β”€ {sample}_mutations.html
β”‚   β”‚   └── {sample}_mutations.tsv
β”‚   β”œβ”€β”€ pseudo_amrfinder_master_summary.json
β”‚   β”œβ”€β”€ pseudo_amrfinder_statistics_summary.tsv
β”‚   β”œβ”€β”€ pseudo_amrfinder_summary_report.html
β”‚   β”œβ”€β”€ pseudo_amrfinder_summary.tsv
β”‚   β”œβ”€β”€ mutation_master_summary.json
β”‚   β”œβ”€β”€ mutation_summary.html
β”‚   └── mutation_summary.tsv
β”‚
β”œβ”€β”€ GENIUS_PSEUDOMONAS_ULTIMATE_GENE_CENTRIC_REPORTS/   # Gene‑centric integrated report (all samples)
β”‚   β”œβ”€β”€ genius_pseudomonas_ultimate_gene_centric_report.html  ← **Main gene‑centric report**
β”‚   β”œβ”€β”€ genius_pseudomonas_ultimate_gene_centric_report.json
β”‚   β”œβ”€β”€ amr_genes.csv
β”‚   β”œβ”€β”€ virulence_genes.csv
β”‚   β”œβ”€β”€ bacmet_genes.csv
β”‚   β”œβ”€β”€ mutations.csv
β”‚   β”œβ”€β”€ sample_overview.csv
β”‚   └── gene_cooccurrence.csv
β”‚
β”œβ”€β”€ GENIUS_PSEUDOMONAS_SAMPLE_CENTRIC_REPORTS/           # Sample‑centric (isolate‑based) report
β”‚   β”œβ”€β”€ genius_pseudomonas_sample_centric_report.html    ← **Main sample‑centric report**
β”‚   β”œβ”€β”€ genius_pseudomonas_sample_centric_report.json
β”‚   β”œβ”€β”€ amr_genes.csv
β”‚   β”œβ”€β”€ virulence_genes.csv
β”‚   β”œβ”€β”€ bacmet_genes.csv
β”‚   β”œβ”€β”€ sample_overview.csv
β”‚   └── gene_cooccurrence.csv
β”‚
β”œβ”€β”€ GENIUS_PSEUDOMONAS_VISUAL_DASHBOARD/                # Interactive visualisation dashboard
β”‚   └── genius_pseudomonas_visual_dashboard.html        ← **Interactive plots (Plotly)**
β”‚
└── pseudoscope_run.log                                 # Full run log (debugging & reproducibility)
β πŸ“Œ Key files to open
FilePurpose
GENIUS_PSEUDOMONAS_ULTIMATE_GENE_CENTRIC_REPORTS/genius_pseudomonas_ultimate_gene_centric_report.htmlGene‑centric – each gene shows all samples carrying it; sortable, searchable, filterable.
GENIUS_PSEUDOMONAS_SAMPLE_CENTRIC_REPORTS/genius_pseudomonas_sample_centric_report.htmlSample‑centric – each sample has a dedicated box with all its AMR, virulence, and bacmet genes.
GENIUS_PSEUDOMONAS_VISUAL_DASHBOARD/genius_pseudomonas_visual_dashboard.htmlInteractive plots – PCA, co‑occurrence network, bar charts, boxplots, heatmaps.

β πŸ” Core Modules

ModulePurposeOutputs
FASTA QCAssembly quality metricsN50, GC%, contig stats, HTML/TSV/JSON
MLSTOxford scheme ST assignmentST, 7‑gene profile, summary table
PASTO‑serotypingO‑type (O1–O20), coverage, hits
AMRfinderPlusAMR gene detectionRisk categories, per‑gene prevalence, mutations
ABRicateMulti‑database screeningResistance, virulence, plasmids, biocides (10 databases)
Ultimate Gene‑Centric ReporterGene‑centric integrationInteractive HTML, CSV exports, per‑gene prevalence
Sample‑Centric ReporterIsolate‑centric viewPer‑sample gene boxes, summary tables
Visualisation DashboardInteractive plotsPCA, networks, boxplots, heatmaps

⁠🐳 Singularity (HPC)

For HPC clusters where Docker is not available:

# Pull directly from Docker Hub
singularity pull pseudoscope.sif docker://bbeckleyhub/pseudoscope:latest

# Run with writable tmpfs (essential for HPC)
singularity run --writable-tmpfs -B $(pwd):/data pseudoscope.sif \
  -i "/data/*.fna" -o /data/output --threads 8

All output files will be owned by your HPC user – no sudo chown needed.


β πŸ“š Citation

If you use PseudoScope in your research, please cite:

@software{beckley2026pseudoscope,
  author = {Brown Beckley},
  title = {PseudoScope: A species‑specific bioinformatics suite for rapid and accessible Pseudomonas aeruginosa genomic analysis},
  year = {2026},
  publisher = {GitHub},
  url = {https://github.com/bbeckley-hub/pseudoscope},
  version = {1.2.0}
}

Integrated tools: Please also cite MLST, ABRicate, PAST, AMRFinderPlus, PubMLST, CARD, ResFinder, VFDB, and others (full list in the repository).


⁠🀝 Support & Contributions


β πŸ“„ License

The PseudoScope pipeline code is licensed under the MIT License. Third‑party tools are used under their respective licenses.


⭐ If you find PseudoScope useful, please star the repository! ⭐

Tag summary

Content type

Image

Digest

sha256:bcc528914…

Size

1.2 GB

Last updated

about 2 months ago

docker pull bbeckleyhub/pseudoscope