BioExcel Building Blocks modules
The BioExcel Building Blocks are divided in categories (biobb modules) depending on their functionalities and tools wrapped. Every module is available from an independent GitHub repository and has an associated BioConda package, Docker/Singularity container and readthedocs documentation pages.
The collection of building blocks and modules is growing. Examples of available modules are:

biobb_common: base package required to use the biobb library
The biobb_common module contains functionalities used by the whole collection of building blocks. Examples of these functionalities include the command-line execution of the wrapped tool, managing of log files, creation and removing of temporary folders required for an execution, zipping/unzipping compressed files, unit testing auxiliary functions, etc.
biobb_io: collection to fetch data from biological databases
The biobb_io module contains operations to retrieve relevant information from biological databases, typically using REST API services to retrieve the data. Examples of these operations are downloading of PDB structures, a list of mutations (variants) mapped to a PDB code, and a list of PDB files contained in a particular cluster of a certain sequence similarity with a give structure.


biobb_md: collection to perform Molecular Dynamics simulations
The biobb_md module is one of the central modules of the library. It contains operations related to MD simulations, mainly using the GROMACS MD package. Examples of these operations are setup processes (solvation, energy minimization, system equilibration), simulation runs and free energy calculations. Predefined configuration files are given for the most standard simulation processes (e.g. minimization, NVT, NPT).
biobb_analysis: collection to perform analysis over MD simulations
The biobb_analysis module contains methods to analyse MD trajectories, including tools wrapped from the analysis set available in the GROMACS MD package and building blocks build using the Ambertools Cpptraj program. Examples of these operations are trajectory imaging, format conversion, RMSd, Rgyr, atomic fluctuation, etc.


biobb_pmx: collection to perform free energy calculations
The biobb_pmx module wraps the tools included in the pmx package to generate hybrid protein structures and topologies to compute free energy calculations with them. These operations are Mutate, to insert mutated residues in structures, GenTop, to generate hybrid GROMACS topologies, and Analyse, to calculate free energies from fast growth thermodynamic integration simulations.
biobb_structure_utils: collection to modify or extract information from a PDB structure file
The biobb_structure_utils module contains a collection of useful methods to work with PDB files, modifying or extracting information from them. Examples of these operations are extract ligand, chain, atoms, etc. from a PDB file, renumber a structure or cat two PDB files.


biobb_chemistry: collection to perform cheminformatics analyses and format conversions
The biobb_chemistry module contains a set of cheminformatics methods to work with small molecules, of particular interest in pharmaceutical studies. Examples of these operations are adding/removing protons, minimizing energy, or obtaining force-field parameters. Format conversion between a large number of molecular formats is also included, thanks to the wrapped OpenBabel Chemistry Toolbox.
biobb_model: collection to check and model 3D structures
The biobb_model module contains a couple of useful molecular modeling tools: FixSideChain, to automatically add missing side chain atoms to a protein or nucleic acid structure, and Mutate, to introduce a residue mutation in a protein structure.


biobb_ml: collection to perform machine learning predictions.
The biobb_ml module contains a set of machine learning tools to implement several algorithms such as clustering, classification, dimensionality reduction or regression. The software libraries wrapped in this package are Scikit Learn and TensorFlow