An open-source R package and Shiny application for the management, calculation, filtering, visualization and exploratory analysis of molecular descriptors and ADMET properties of small molecules.
admetshiny integrates cheminformatics and bioinformatics workflows with an intuitive dashboard to support the prioritization of compounds in early-stage drug discovery. The application is organised in two complementary modules:
webchem package), enter them manually, or
upload them as a CSV, then compute nine physicochemical descriptors
locally with the Chemistry Development Kit (CDK)..xlsx) ADMET dataset and manually map its columns to the
application’s 20-field standard schema. Missing descriptors are
back-filled from SMILES via CDK when available.Both modules share the same drug-likeness filters, BOILED-Egg model, P-gp substrate classifier and 14-chart catalogue.
You can install the development version from GitHub:
# install.packages("remotes")
remotes::install_github("xavierclementegarcia/admetshiny")The optional CDK-based descriptor calculation requires the
rcdk package, which in turn requires Java
JDK (a JRE alone is not sufficient).
Launch the interactive application:
admetshiny::run_app()Use the computational functions programmatically:
library(admetshiny)
# Compute CDK descriptors for a few SMILES and apply the Lipinski filter
smiles <- c("CCO", "CC(=O)OC1=CC=CC=C1C(=O)O", "CN1C=NC2=C1C(=O)N(C(=O)N2C)C")
desc <- calcCDKDescriptors(smiles)
desc <- mapCDKDescriptors(desc) # adds #violations and ADMET cols
filtered <- applyFilters(desc, filters = c("Lipinski", "Veber", "Ghose"))
# Plot the BOILED-Egg
plotBoiledEgg(filtered)
# Or normalize any external ADMET dataset via manual column mapping
# (returns the standard schema with #violations + ADMET properties):
# d <- read.csv("my_admet.csv", check.names = FALSE)
# mapping <- setNames(c("SMILES", "MW", "LogP", "TPSA"),
# c("CanonicalSMILES", "MW", "iLOGP", "TPSA"))
# d <- mapADMETColumns(d, mapping, calculate_cdk = TRUE)MIT LICENSE