rBAN is a Java library and command-line tool for the retrosynthetic analysis of non-ribosomal peptides (NRPs) from their chemical structures.
Starting from a peptide represented as a SMILES string, rBAN identifies peptide bonds, reconstructs the monomeric graph, and predicts the constituent monomers, enabling downstream structural analysis and annotation.
The project is distributed both as a standalone Java application and as the computational engine powering the rBAN Web Application.
The retrosynthetic workflow implemented by rBAN can be summarized as:
SMILES
│
▼
Chemical graph
│
▼
Peptide bond identification
│
▼
Graph fragmentation
│
▼
Monomer identification
│
▼
Monomeric graph
This workflow transforms the chemical structure of a non-ribosomal peptide into its corresponding monomeric graph, enabling downstream structural analysis, annotation, and comparison with known peptides. Find below a figure illustrating the process.
- 🌐 Web application: https://bioinfo.cristal.univ-lille.fr/rban/
- 📄 Publication: https://doi.org/10.1186/s13321-019-0335-x
- 🖥️ rBAN Web Application Git: https://github.com/ericart89/rBAN-webapp.git
Clone the repository and build the project using Maven:
mvn clean packageThe generated JAR can then be executed from the command line.
By default, rBAN uses the monomer database provided by Norine.
To preprocess a custom monomer database:
java -jar rBAN-1.0.jar \
-preprocessingInput <input.json> \
-preprocessingOutput <output.json>Display the command-line help:
java -jar rBAN-1.0.jar -hProcess a single peptide:
java -jar rBAN-1.0.jar \
-inputId <identifier> \
-inputSmiles "<SMILES>" \
-outputFolder <output-folder>Process multiple peptides from a JSON file:
java -jar rBAN-1.0.jar \
-inputFile <input.json> \
-outputFolder <output-folder>The input JSON file should contain an array of peptide objects:
[
{
"id": "NOR01763",
"smiles": "CC=CCC(C)..."
},
{
"id": "NOR00681",
"smiles": "C[C@H]1..."
}
]A complete example is available in:
examples/example_input_file.json
| Option | Description |
|---|---|
inputId |
Identifier assigned to the peptide. |
inputSmiles |
SMILES representation of the peptide. |
inputFile |
JSON file containing peptide identifiers and SMILES strings. |
outputFolder |
Directory where results are written. |
imgs |
Generate molecular depictions. |
norineGraph |
Compare the generated graph with the Norine reference graph. |
discoveryMode |
Query PubChem to identify previously unknown monomers. |
monomersDB |
Use a custom preprocessed monomer database. |
outputFileName |
Name of the generated JSON output file. |
imgsFolderName |
Name of the images directory. |
preprocessingInput |
Input JSON describing custom monomers. |
preprocessingOutput |
Output path for the preprocessed monomer database. |
The rBAN software ecosystem consists of two complementary repositories:
- rBAN — Core Java library implementing the retrosynthetic analysis algorithms.
- rBAN Web Application — Browser-based interface exposing the library through a lightweight backend service.
If you use rBAN in your research, please cite:
Ricart, E., Leclère, V., Flissi, A., et al.
rBAN: retro-biosynthetic analysis of nonribosomal peptides.
Journal of Cheminformatics, 11, 13 (2019).
https://doi.org/10.1186/s13321-019-0335-x
Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0)
https://creativecommons.org/licenses/by-nc-sa/4.0/
This repository contains the reference implementation of the rBAN retrosynthetic analysis algorithm developed during my PhD research. It is preserved as the computational engine accompanying the published work and remains available for reproducibility, reuse, and educational purposes.
