DRAM on KBase let's anyone run annotations using DRAM in the cloud. DRAM is an annotation tool that can annotate bacterial, archaeal and viral genomes and distills those annotatios into represetations of the functional genomic potential of those organisms. If you want to read more about DRAM you can check out the GitHub, wiki and journal article.
In KBase Assembly objects contain nucleotide sequences from genomes or metagenomes. DRAM can predict genes and annotate their function from KBase Assembly objects which may be microbial isolate genomes, metagenome assembled genomes or metagenomes. This is done with the Annotate and Distill Assemblies with DRAM app. This app can also anntoate AssemblySet objects which contain collection of Assembly objects. It also generates a Genome object and a GenomeSet object which can be used for further analysis with other KBase apps. The full annotations and other DRAM files are also available for download in the app.
NOTE: When annotating metagenomes we do not want to generate genome objects as it takes a long time and will not be useful. So when annotating metagenomes please check the "Is metagenome?" checkbox.
Here we show DRAM annotation of a single assembly. This is an Assembly object from an E. coli genome. You can see that a Genome object is. You also get to see the DRAM product in the app output. Hover over the heatmap to see which genes were present that suggest the ability of this organism to do these functions.
To annotate multiple genomes at once you can use a KBase AssemblySet. Here we build an AssemblySet from the same E. coli genome as well as a Rhodobacter genome. Then we use this as input to Annotate and Distill Assemblies with DRAM. Look at how we can then use the product, displayed in the app, to see the differences in genomic potential between these two organisms.
KBase Genome objects are the genome of an organism with predicted, and optionally annotated, protein sequences. These can be annoated by DRAM with the Annotate and Distill Genomes with DRAM app. You can also use GenomeSets, collections of Genome objects, as input. This is equivalent to using DRAM.py annotate_genes
with the command line version of DRAM. When you use this app the Genome or GenomeSet will be updated to include DRAM annotations. The full annotations and other DRAM files are also available for download in the app.
Here we are annotating a Genome object built from a E. coli genome. This also shows how you can merge the annotations KO and EC annotations from DRAM into a single set of anntoations within a Genome object and buid a metabolic model with them.
NOTE: When building metabolic models you must uncheck the "Include nontemplate reactions" box to use the DRAM annotations. We also suggest using nontemplate reactions and considering using not mass/charge balanced reactions.
DRAM can also annotate GenomeSets which are collections of Genome objects. Here we are going to make a genome set from the E. coli genome as well as a Shewanella genome and annotate it with DRAM. This makes it easy to compare the genomic potential of the two organisms.
You can also annotate viruses with a view toward finding auxiliary metabolic genes (AMGs) using DRAM. To do this you must start with a metagenomic assembly. Here we are using one from a previously published study. First you must detect viruses in your assembly using the VirSorter KBase app. Then in the VirSorter Summary in the results tab there will be a shock ID. To then run DRAM-v you use one of the Virus files that come from VirSorter along with the shock ID from the VirSorter Summary. After you annotate this with the Annotate and Distill Viral Assemblies with DRAM-v app you will get a interactive heatmap showing the AMGs present in these viruses. The full annotations and other DRAM files are also available for download in the app.