Plugin Architecture
Stages are loaded dynamically at runtime. Add, remove, or substitute a step without touching the core engine.
Bioinformatics Research Group · FIU
PluMA lets researchers implement an algorithm in their programming language of choice and test it within a larger pipeline — alongside stages written in other languages that use different file formats. The core is infinitely extensible through dynamically loaded plugins.
Abstract
PluMA — Plugin-Based Microbiome Analysis — is a pipeline framework from the BioRG group at Florida International University. It began as a microbiome-analysis tool and has grown into a general-purpose environment for constructing lightweight, composable, reproducible bioinformatics pipelines.
A PluMA pipeline is a sequence of plugins, each a self-contained stage authored in a language of the researcher's choosing. The core engine discovers and loads plugins on the fly, so stages in C++, Python, Perl, R, or Java can be freely combined within a single workflow. New algorithms can be dropped in, tested, and benchmarked without modifying the core — and plugins developed by others can be reused across projects without porting.
Design Principles
Stages are loaded dynamically at runtime. Add, remove, or substitute a step without touching the core engine.
Implement plugins in C++, Python, Perl, R, or Java. Stages in different languages interoperate through a shared file interface.
The core executable is under 200KB. Download only the plugins your pipeline needs from the pool of over 1,500.
Dedicated GPU plugins accelerate computationally intensive stages without changing the pipeline definition.
Pipelines are declarative — stages execute sequentially and can be reordered or swapped through configuration alone.
Used across metagenomics, metatranscriptomics, metabolomics, multiomics, and epigenetics studies.
Citation