Help
About THEOBROMA
THEOBROMA is an open, curated natural products database aggregating compounds from 29 source databases across four biological kingdoms (plant, fungi, bacteria, animal), a residual unresolved category, and 14 resolved geographic regions. Cross-kingdom attributions are preserved via a secondary-kingdoms layer so a single compound can be discovered under any kingdom in which it has been reported. THEOBROMA supports structure-based virtual screening, cheminformatics research, and drug discovery from natural product chemical space.
Search
Keyboard shortcut: Press / anywhere on the site to focus the search box without clicking.
Compound name — partial substring matching, case-insensitive. Autocomplete suggestions appear after 2 characters. Also searches PubChem synonyms (e.g., "alpha-lipoic acid" finds "Thioctic acid"). Hyphens and Greek letters are normalized automatically. The "Exact match" toggle restricts to literal equality on the chosen field. Use the "/" keyboard shortcut to focus the search box from anywhere on the page.
SMILES — exact canonical SMILES match. The query SMILES is canonicalized via RDKit before lookup, so equivalent representations resolve to the same compound.
InChIKey — exact 27-character match (full stereochemistry-aware key). If the compound is found, the search redirects directly to the compound detail page.
Source organism — substring matching against the producing organism field with autocomplete.
Source database, Geographic region, Kingdom — case-insensitive equality against controlled vocabularies (29 databases, 14 resolved regions, 5 kingdom values: plant, fungi, bacteria, animal, unresolved). Filtering by kingdom returns every compound attested in that kingdom (primary or secondary) so cross-kingdom metabolites surface from each of their kingdoms.
Genus, Family, Order, Class, and Phylum — taxonomic search across all five ranks. Resolution combines three authorities: the World Checklist of Vascular Plants (WCVP, Kew, January 2026 release) for plant binomials, NCBI Taxonomy (taxdump 2026-05) for non-plant taxa, and the World Register of Marine Species (WoRMS) for marine organisms. Combined coverage is 99.8% of compound-taxonomy rows with at least one resolved rank, after NCBI- and WCVP-based backfilling of order, class, and phylum for plant clades. Genus and family come primarily from WCVP for plants and NCBI for non-plants; order, class, and phylum come from NCBI and WoRMS JSONB lineages. Synonyms are automatically mapped to accepted names. Note that NCBI Taxonomy does not consistently fill order for plant clades, so order-rank queries for plant taxa may return fewer results than expected; family or genus search is recommended for plant queries.
Chemical property — filter by chemical class or by numerical property ranges. Two class-filter types are available reflecting the two underlying classification ontologies:
- NPClassifier class — queries the
np_classandinferred_classfields together. NPClassifier is the natural-products-focused ontology computed for the full corpus via a pretrained dual-input model on Morgan fingerprints;inferred_classcovers compounds where the upstream NPClassifier output was empty, filled by a per-class XGBoost ensemble trained on Morgan + MACCS + ChemBERTa features. - ClassyFire superclass — queries the
classyfire_superclassfield, carrying forward ClassyFire's broad chemical-taxonomy assignment where the source database provided it.
Numerical property ranges are also available for molecular weight, LogP, TPSA, HBA, HBD, rings, rotatable bonds, plus the full ADMET-AI ensemble of 47 endpoints (toxicity, absorption, metabolism, distribution and physicochemical predictions including AMES, hERG, DILI, BBB, bioavailability, P-gp, Caco-2, clearance, half-life, plasma protein binding, solubility, lipophilicity, volume of distribution, the seven Tox21 nuclear-receptor assays, the five Tox21 stress-response assays, and CYP1A2/2C9/2C19/2D6/3A4 substrate and inhibition).
Behavior notes for class search. Class search uses case-insensitive substring matching against the underlying classifier columns (np_class, classyfire_superclass, inferred_class, np_superclass, np_pathway). Queries for labels not present in any of these columns return zero rows. For example, "Curcuminoids" is not used as a class by NPClassifier or ClassyFire as applied to this corpus, so a class-filtered query for "Curcuminoids" returns no compounds; to retrieve curcumin and structural analogs, use name search (q=curcumin&type=name), which substring-matches against compound names and PubChem synonyms.
Name-search behavior. Name search returns substring matches against compound names and synonyms. A query such as q=curcumin matches any compound whose name or synonyms contain "curcumin" as a substring, including derivatives, conjugates, and analogs that list curcumin in their synonyms. To restrict to literal-equality name matches, enable the "Exact match" toggle.
Multi-filter search
Click "+ Add another filter" to combine multiple criteria with AND logic. For example, search for all triterpenoids from Africa, or all fungal compounds with molecular weight 200-500 Da and low DILI risk.
Results are relevance-sorted for name searches: exact matches appear first, then prefix matches, then substring matches. Within each tier, shorter (simpler) names rank higher. All result tables have sortable columns — click any column header to sort ascending or descending.
Similarity search
Enter a SMILES string, compound name, or THEO_ ID to find structurally similar compounds. Three metrics are available:
- Morgan / ECFP4 Tanimoto (default) — circular fingerprint, radius 2, 2048-bit. Good for general structural similarity.
- MACCS Tanimoto — 167-bit substructure key fingerprint. Good for matching based on functional-group composition; less sensitive to large skeletal differences.
- ChemBERTa cosine — 768-dimensional dense embedding from a transformer pretrained on ZINC. Captures learned chemical-space features that may differ from hand-engineered fingerprints.
When to use which: Morgan/ECFP4 is the default for general-purpose similarity ranking and is what most cheminformatics tools use. MACCS is preferred when functional-group composition matters more than overall skeleton (e.g. looking for compounds with similar pharmacophore patterns despite different scaffolds). ChemBERTa is useful when you want learned representations that may pick up subtle features fingerprints miss; it is also the fastest option for top-N retrieval against the full corpus.
Threshold (Tc) defaults to 0.3; Morgan and MACCS apply this as a hard cutoff. ChemBERTa retrieval uses a FAISS HNSW index (M=32, efConstruction=200, efSearch=128) and returns the top-N nearest neighbors. Results can be post-filtered by region, kingdom, and chemical class.
Substructure search
Enter a SMILES or SMARTS pattern to find all compounds containing that substructure. Uses Morgan fingerprint pre-screening followed by RDKit substructure matching.
Scaffold browser
Browse compounds grouped by their Bemis-Murcko molecular framework. Click any scaffold to see all compounds sharing that core structure.
Property computation provenance
Physicochemical properties (molecular weight, LogP, TPSA, HBA, HBD, ring count, rotatable bonds) are computed by THEOBROMA from canonical SMILES via RDKit (Descriptors.ExactMolWt, Descriptors.MolLogP, Descriptors.TPSA, rdMolDescriptors functions). Source-database property values are not carried forward, ensuring consistent computation across the corpus.
Chemical classifications come from two ontologies. NPClassifier (NP-class, NP-superclass, NP-pathway) is computed for the full corpus via the pretrained NPClassifier dual-input model on Morgan fingerprints. ClassyFire superclasses are carried forward where present in source databases; for compounds lacking a ClassyFire annotation, the inferred_class field provides a per-class XGBoost prediction trained on Morgan, MACCS, and ChemBERTa-PCA features with calibrated probability thresholds.
ADMET predictions (47 endpoints persisted in the searchable database, covering toxicity, absorption, metabolism, distribution, and physicochemical properties) are produced by ADMET-AI (Chemprop D-MPNN ensemble; Swanson et al.). Each endpoint has its own min/max/mean range visible in the search dropdown and is queryable via URL parameters of the form <endpoint>_min and <endpoint>_max.
For the 19,677 compounds with a matching ChEBI 3-stars entry, additional curator-written metadata is surfaced on the compound detail page: a chemistry definition, an IUPAC name (where ChEBI's IUPAC variant differs from the THEOBROMA primary name), PubMed PMID arrays, and per-database deep-links to the external resources cross-referenced by ChEBI. Matching is by InChIKey; no transformation of the THEOBROMA structure or naming is performed.
Multi-source compounds
When a compound (identified by full 27-character InChIKey) is reported by more than one source database, THEOBROMA stores it as a single row with all contributing databases listed in the all_sources field (pipe-separated). The primary source_db preferentially shows regional or specialized databases over aggregators like COCONUT. Compounds appearing in two or more source databases are counted in the "Multi-source compounds" statistic on the Statistics page.
Compounds with "unresolved" region or kingdom lack geographic or taxonomic metadata in their source databases.
Compounds reported across multiple kingdoms (e.g. a plant database and a fungal database for the same metabolite, or an endophyte metabolite isolated from both host plant and fungus) are stored as a single row with a primary kingdom (the majority-attested one) and a secondary_kingdoms array listing every additional kingdom in which the compound is reported. Filtering by kingdom returns every compound attested in that kingdom regardless of whether it is primary or secondary, so endophyte metabolites surface from the plant kingdom as well as the fungal kingdom. The corpus total (1,133,004 distinct compounds) remains consistent across views; sums of kingdom slices exceed the corpus total only because cross-attributed compounds contribute to several slices.
How to cite
Thor Klamt, Anne Jaczkowski, Prof. Dr. rer. nat. Jakob Franke, and Prof. Dr. techn. Wolfgang Nejdl (2026). THEOBROMA: an open multi-kingdom natural products database with per-compound license tiers for legally-aware drug discovery. Preprint forthcoming on bioRxiv; under preparation for submission to Nucleic Acids Research.
Please also cite the original source databases for any compounds you use. Source database citations and licenses are listed on the Statistics page.
API
GET /api/search?q=QUERY&type=TYPE&limit=N&offset=M&format=FORMAT&license=LIC
Parameters:
q — search query (required)
type — name | smiles | inchikey | kingdom | organism |
region | source | genus | family | order | tax_class | phylum |
npclassifier_class | classyfire_class |
class (union of chemistry-class ontologies) | pathway
exact — true to require literal equality on text-search types
(default false; substring match)
limit — max results, 1-10000 (default: 50)
offset — pagination offset (default: 0)
format — json | csv (default: json)
license — all | commercial | academic (default: all)
GET /api/compound/COMP_ID — full compound details by THEO_ id (includes license_provenance sub-object)
GET /api/compound/COMP_ID/license-provenance — per-source license attestation chain (audit trail)
GET /api/stereoisomers/COMP_ID — all stereoisomers (14-char InChIKey match)
GET /api/similarity?smiles=...&metric=morgan|maccs|chemberta
GET /api/autocomplete?q=QUERY — name autocomplete
GET /api/organisms?q=QUERY — organism autocomplete
GET /api/filter_options — available values per filter type
(includes npclassifier_class, classyfire_class)
GET /api/search?...&format=json&download=true — download results as JSON attachment
GET /api/bulk?cols=...&format=json — bulk download in JSON format (streamed)
GET /api/stats — database statistics (includes license-tier breakdown)
GET /api/bulk?cols=...&license=commercial|academic|all — streaming bulk export (CSV, default 14-column annotation payload); tier=open|nc|all also accepted
Full OpenAPI specification at /api.
Recommended bulk-download size: up to 100,000 rows per request through /export or /api/search; use /api/bulk for full-corpus exports (streaming, no row limit).
No per-request rate limit is enforced at present; for sustained high-throughput use (more than a few requests per second), please contact the corresponding author so we can plan server load. Known scraping user-agents (GPTBot, CCBot, ClaudeBot, anthropic-ai, PerplexityBot, Bytespider) are rate-limited on the heaviest routes; robots.txt documents the policy.
License
Web application code: MIT License.
Compound data: per-record license tiers carried forward from source databases.
- CC BY 4.0 (1,031,332 compounds, 91.03%): COCONUT 2.0, LOTUS v11, MIBiG 4.0, NPAtlas, CSIRO, ANPDB, SANCDB, AfroDb, NaturAr, MeFSAT, EMNPD, CyanoMetDB, MycoCentral, AMDB, StreptomeDB, NPASS 3.0, phytochemdb.
- CC0 (12,044 compounds, 1.06%): TM-MC 2.0.
- CC BY-NC 4.0 (87,119 compounds, 7.69%): HERB 2.0, FooDB, IMPPAT 2.0, Phyto4Health, TIPdb-3D (placeholder pending source-license confirmation).
- Unspecified (2,509 compounds, 0.22%): MicotoXilico, LMDB_Lichen, CMDB_Cereals, TMDB_Trichoderma, SMDB_Spice. The license filter excludes Unspecified rows from both "Commercial use allowed" and "Non-commercial research" categories pending source-license confirmation.
Each record includes a license_tier field. When a compound appears in multiple sources, the most permissive license applies. The CMNPD database, originally part of the corpus, was removed in v32 due to its CC BY-NC-SA share-alike clause; CMNPD-exclusive compounds were dropped and CMNPD provenance was stripped from multi-source rows.
Glossary
Compact reference for non-cheminformatician users.
- SMILES
- Simplified Molecular-Input Line-Entry System; an ASCII string representation of a molecular graph (e.g.
CC(=O)Oc1ccccc1C(=O)Ofor aspirin). - SMARTS
- A SMILES-derived pattern language for substructure queries; supports wildcards and logical operators.
- InChI / InChIKey
- InChI is a normalized textual identifier capturing the full molecular graph and stereochemistry. The 27-character InChIKey is its compact hash, suitable for exact-match lookup.
- Canonical SMILES
- A SMILES string produced by a deterministic canonicalization algorithm so that the same molecule always yields the same string regardless of input order.
- Tanimoto coefficient (Tc)
- Similarity metric between two binary fingerprints, computed as the size of their intersection divided by the size of their union. Range 0 to 1; higher means more similar.
- Morgan / ECFP4 fingerprint
- Circular fingerprint encoding atom-environment substructures within radius 2 (ECFP4 convention). Folded to 2048 bits in THEOBROMA. The cheminformatics community default for similarity ranking.
- MACCS keys
- 167-bit substructure-presence fingerprint with a curated dictionary of functional-group and ring-system queries. Good for functional-group similarity; weaker for whole-skeleton similarity.
- ChEBI
- Chemical Entities of Biological Interest; a manually-curated chemistry ontology maintained by EMBL-EBI under CC BY 4.0. THEOBROMA integrates the 3-stars (highest curation tier) subset, matching by InChIKey. For 19,677 compounds, ChEBI provides a curator-written definition, IUPAC name, PubMed PMID arrays, and cross-references to KEGG, KNApSAcK, LIPID MAPS, MetaboLights, ChEMBL, MetaCyc, UniProt, Rhea, NMRShiftDB, CompTox, and other resources.
- ChemBERTa embedding
- 768-dimensional dense vector produced by a transformer model pretrained on millions of compounds from ZINC. Captures learned chemical-space structure; queried via cosine similarity in a FAISS HNSW index for sub-second retrieval.
- Bemis-Murcko scaffold
- The molecular framework obtained by stripping all acyclic side chains while retaining linkers between ring systems. Used to group compounds by core skeleton.
- FAISS HNSW
- Hierarchical Navigable Small World graph index for approximate-nearest-neighbor search over dense embeddings. Enables fast top-N retrieval in 1M+ compound corpora.
- NPClassifier
- Deep-learning model that assigns natural-product class, superclass, and biosynthetic pathway from molecular structure (Kim et al., 2021). In THEOBROMA, the
npclassifier_classfilter type queries both the direct NPClassifier output (np_class) and the per-class XGBoost-inferred extensions (inferred_class). - ClassyFire
- Rule-based chemical taxonomy assigning kingdom, superclass, class, and subclass via expert-curated structural patterns (Djoumbou-Feunang et al., 2016). In THEOBROMA, the
classyfire_classfilter type queries the superclass field carried forward from source databases. - ADMET
- Absorption, Distribution, Metabolism, Excretion, Toxicity; properties that predict in-vivo behavior of drug candidates. THEOBROMA persists all 47 endpoints of the ADMET-AI Chemprop ensemble (Swanson et al.) in the searchable database, including AMES, hERG, BBB, bioavailability, P-gp, Caco-2, multiple CYP inhibition and substrate predictions, the Tox21 nuclear-receptor and stress-response panels, clearance, half-life, plasma protein binding, solubility, lipophilicity, LD50, and volume of distribution.
- DILI
- Drug-Induced Liver Injury; predicted probability that a compound causes hepatotoxicity.
- AqSolDB solubility
- Predicted aqueous solubility (log mol/L) from a model trained on the AqSolDB benchmark.
- LogP
- Logarithm of the octanol-water partition coefficient; measures lipophilicity. Drug-like compounds typically have LogP between 0 and 5.
- TPSA
- Topological polar surface area in square angstroms; correlates with membrane permeability and oral bioavailability.
- HBA / HBD
- Hydrogen-bond acceptor and donor counts; together with MW and LogP, part of Lipinski's Rule of Five for oral drug likeness.
- Trust score
- THEOBROMA-internal composite (0-1) reflecting source-database authority, classification coverage, and provenance completeness. Higher means more confidently characterized.
Source databases (29)
COCONUT 2.0, LOTUS v11, FooDB, NPASS 3.0, HERB 2.0, TM-MC 2.0, IMPPAT 2.0, CSIRO Australian NP, ANPDB, NPAtlas, phytochemdb, MicotoXilico, StreptomeDB, MIBiG 4.0, EMNPD, MeFSAT, CyanoMetDB, MycoCentral, NaturAr, LMDB_Lichen, AMDB, Phyto4Health, AfroDb, SANCDB, CMDB_Cereals, TMDB_Trichoderma, SMDB_Spice, CMAUPv2, TIPdb-3D.
Enrichment layers
In addition to the 29 source databases, THEOBROMA integrates several enrichment layers that annotate compounds with metadata not directly available from any single source:
- LOTUS (via Wikidata SPARQL): natural-product to organism linkages, references, and chemical classifications.
- PubChem synonyms (PUG REST + RDF bulk): compound name variants, CAS, INN, USAN, brand and trade names.
- WCVP (World Checklist of Vascular Plants, Kew): plant genus and family taxonomy. Combined with NCBI Taxonomy and WoRMS, taxonomic resolution reaches 99.8% of compound-taxonomy rows with at least one resolved rank after the NCBI- and WCVP-based backfill of order, class, and phylum for plant clades.
- GBIF (Global Biodiversity Information Facility): species-name resolution and geographic region attribution.
- ChEBI (Chemical Entities of Biological Interest, EBI; 3-stars manually-curated subset): curator-written definitions, IUPAC names, PubMed PMIDs, and cross-references to KEGG, KNApSAcK, LIPID MAPS, MetaboLights, ChEMBL, MetaCyc, UniProt, Rhea, NMRShiftDB, CompTox, CAS, and BRENDA. ChEBI annotations apply to 19,677 compounds (1.74% of corpus); 84,019 net new synonyms were merged into the searchable synonyms layer. License: CC BY 4.0.
Database update cadence
THEOBROMA tracks source-database releases and re-integrates on a roughly biannual cycle. Per-source download dates and version strings are tracked in sources.yaml. Major releases are tagged in the GitHub repository and deposited on Zenodo for long-term archival.
Contact
For bug reports and feature requests, please open an issue on GitHub. For other inquiries, contact the corresponding author Thor Klamt at Thor.Klamt@gmail.com.