name: diamond_blastx
description: Queries a DIAMOND database using blastx mode
keywords:
  - fasta
  - diamond
  - blastx
  - DNA sequence
tools:
  - diamond:
      description: Accelerated BLAST compatible local sequence aligner
      homepage: https://github.com/bbuchfink/diamond
      documentation: https://github.com/bbuchfink/diamond/wiki
      tool_dev_url: https://github.com/bbuchfink/diamond
      doi: "10.1038/s41592-021-01101-x"
      licence: ["GPL v3.0"]

input:
  - meta:
      type: map
      description: |
        Groovy Map containing sample information
        e.g. [ id:'test', single_end:false ]
  - fasta:
      type: file
      description: Input fasta file containing query sequences
      pattern: "*.{fa,fasta}"
  - db:
      type: directory
      description: Directory containing the nucelotide blast database
      pattern: "*"
  - out_ext:
      type: string
      description: |
        Specify the type of output file to be generated. `blast` corresponds to
        BLAST pairwise format. `xml` corresponds to BLAST xml format.
        `txt` corresponds to to BLAST tabular format. `tsv` corresponds to
        taxonomic classification format.
      pattern: "blast|xml|txt|daa|sam|tsv|paf"

output:
  - blast:
      type: file
      description: File containing blastp hits
      pattern: "*.{blast}"
  - xml:
      type: file
      description: File containing blastp hits
      pattern: "*.{xml}"
  - txt:
      type: file
      description: File containing hits in tabular BLAST format.
      pattern: "*.{txt}"
  - daa:
      type: file
      description: File containing hits DAA format
      pattern: "*.{daa}"
  - sam:
      type: file
      description: File containing aligned reads in SAM format
      pattern: "*.{sam}"
  - tsv:
      type: file
      description: Tab separated file containing taxonomic classification of hits
      pattern: "*.{tsv}"
  - paf:
      type: file
      description: File containing aligned reads in pairwise mapping format format
      pattern: "*.{paf}"
  - versions:
      type: file
      description: File containing software versions
      pattern: "versions.yml"
  - log:
      type: file
      description: Log file containing stdout information
      pattern: "*.{log}"

authors:
  - "@spficklin"
  - "@jfy133"
  - "@mjamy"
