mortar

MOlecule fRagmenTAtion fRamework

https://github.com/felixbaensch/mortar

Science Score: 67.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 51 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (10.6%) to scientific vocabulary
Last synced: 6 months ago · JSON representation ·

Repository

MOlecule fRagmenTAtion fRamework

Basic Info
Statistics
  • Stars: 23
  • Watchers: 3
  • Forks: 4
  • Open Issues: 39
  • Releases: 17
Created over 6 years ago · Last pushed 6 months ago
Metadata Files
Readme License Citation

README.md

DOI License: MIT Maintenance GitHub issues GitHub contributors GitHub release Java CI with Gradle Quality Gate Status Software Article - JChemInf Tutorial - Tutorial folder Tutorial - Online Download_statistics - GitHub_Release_Stats_by_tooomm

MORTAR_logo

MOlecule fRagmenTAtion fRamework (MORTAR)


SonarCloud

Contents of this document

Description

MORTAR ('MOlecule fRagmenTation fRamework') is a free and open-source graphical desktop application that supports molecular in silico fragmentation and substructure analysis. The Java/JavaFX rich client offers extensive graphical functions for visualizing the fragmentation results of individual compounds or entire compound sets. In addition to three currently integrated methods for fragmentation and substructure analysis - ErtlFunctionalGroupsFinder, Sugar Removal Utility, and CDK-Scaffold - MORTAR allows straightforward integration of additional fragmentation algorithms to support the development of new methods at an early stage. All cheminformatics functionalities are implemented based on the Chemistry Development Kit (CDK).
The scientific article describing MORTAR can be found here: MORTAR: a rich client application for in silico molecule fragmentation (Baensch et al. 2023) (please cite it if you are using MORTAR for your scientific work).

Contents of this repository

Sources

The "src" subfolder contains all source code packages.

Tutorial

The "Tutorial" folder contains a PDF document with a detailed tutorial on how to install and use MORTAR, together with a test data set.
The tutorial PDF document is also available online.

Images

The "Images" folder contains the MORTAR logo and icon as image files that were created by Kohulan Rajan. If you are using MORTAR for your own projects, feel free to acknowledge it by using the logo in your presentations, etc.

Installation

Application

Pre-compiled and executable MORTAR distributions can be found attached as assets to the marked releases (below the change notes).
In brief (more details in the dedicated sections below), a graphical installer executable is available for Windows, a disk image (DMG) file for installation on macOS, and a Debian package (DEB) is available for installation on Debian-based Linux distributions like Ubuntu. On all three operating systems (Windows, macOS, and Linux), MORTAR can also be run from the command line using the supplied “fat” Java ARchive (JAR) which gives you full control, e.g., over how much memory should be used. A Java Development Kit or Runtime Environment (JDK/JRE) of version 21.0.1 or higher must be pre-installed on your system to run MORTAR from the command line.

Windows: A convenient Windows OS installer executable for MORTAR is available (click here to automatically download the installer.exe of the latest version). Download the installer executable, start it, and follow the instructions to install MORTAR. Note that the installation includes a full Java Runtime Environment (JRE). After installation, create a shortcut to an appropriate MORTAR start batch file on your Windows desktop. E.g. for MORTAR to use up to 4 gigabytes of RAM, copy a shortcut to batch file "MORTAR.bat" which is located in the MORTAR program folder (default "C:\Program Files\MORTAR\MORTARv1.4.0.0\bin" or the path specified at installation). To start MORTAR, double-click the created shortcut. MORTAR can be uninstalled by the provided Uninstall.exe executable in the MORTAR program folder or standard Windows functions.
As an alternative to "MORTAR.bat", there is also the "MORTAR_20GB.bat" batch file available that allocates up to 20 GB of RAM for MORTAR. If you want to configure your own heap space settings, open one of the provided batch files and adjust the line

shell set DEFAULT_JVM_OPTS="-Xms4g" "-Xmx4g"

with your chosen initially allocated memory (-Xms) and maximum value (-Xmx) accordingly.

Should this installation or the execution of the batch files not work for you, you can also run MORTAR directly from the command line (see below).
Please note that x32 processor architectures are not supported by MORTAR.

MacOS: On macOS, MORTAR can be installed using the disk image (.dmg) files attached to every release since v1.2 (one for devices with an x86 processor architecture and one for ARM/AArch64-based systems). Download the right file for your system and double-click on it. In the window that opens, drag the MORTAR icon into the Applications folder to install it. It might be necessary to adjust your security settings to allow MORTAR to run.
The disk images are configured to allocate up to 4 gigabytes of RAM to MORTAR. Should you want to assign more memory to analyse bigger data sets or should this installation not work for you, you can run MORTAR directly from the command line (see below).

Linux: On Debian-based Linux distributions like Ubuntu, MORTAR can be installed using the Debian package (.deb) attached to every release since v1.2.2 (only one for devices with an x86 processor architecture). Download the package and double-click on it to install it. Alternatively, you can install it via the command line:

shell sudo dpkg -i <path to>MORTAR-1.4.0.deb

Execute the command in the directory where the JAR is situated or use its explicit path instead of <path to>. The package is configured to allocate up to 4 gigabytes of RAM to MORTAR. Should you want to assign more memory to analyse bigger data sets or should this installation not work for you, you can run MORTAR directly from the command line (see below).

JAR execution via command line (all platforms): Every release has the executable JAR "MORTAR-fat-1.4.0.0.jar" attached, which contains the packaged MORTAR code together with all dependencies (click here to automatically download the JAR of the latest version). To run MORTAR (with up to 4 GB of RAM available, e.g.), execute the JAR from the command-line using

```shell java -jar -Xms512m -Xmx4g MORTAR-fat-1.4.0.0.jar ``` A JDK or JRE of version 21.0.1 or higher needs to be installed on your system and linked to the "java" command. Otherwise, replace "java" with the path to the java command of your JDK or JRE.
Execute the command in the directory where the JAR is situated or use its explicit path instead of ``````.
Adjust the initially allocated memory (-Xms) and maximum memory to be used (-Xmx) according to your preferences.

Further notes: Please note that MORTAR only supports x64 (not x32, on all three platforms) and AArch64/ARM (on macOS and Linux) architectures in general. For the latter, a special "fat JAR" named "MORTAR-fat-aarch64-1.4.0.0.jar" is available from the distributions attached to the releases and must be used (click here to automatically download the AArch64 JAR of the latest version).

Also note that using the Windows Subsystem for Linux (WSL) is not recommended, since a lot of additional configurations have to be made there to run Java GUI applications.

The X / X11 / X Window System can be used to run a graphical application like MORTAR on a remote server while displaying the graphical user interface on the local machine / personal computer. This setup can be beneficial if more computing power or memory is required to analyze large data sets. However, please note that while this is possible in principle, unexpected behavior from MORTAR may occur. We cannot take responsibility for or recommend this way of deployment, similar to using the WSL as mentioned above.

Source code

This is a Gradle project. In order to use the source code for your own software or do your own MORTAR build, download or clone the repository and open it in a Gradle-supporting IDE (e.g. IntelliJ) as a Gradle project and execute the build.gradle file. Gradle will then take care of installing all dependencies. A Java Development Kit (JDK) of version 21.0.1 or higher must also be pre-installed and set as project JDK / project compiler. The Gradle build process is configured to include a specific Java Runtime Environment (JRE) in the "install" folder. For this to work, you need to create an "AdoptOpenJDK\jdk-21.0.112jre\" folder and put the JRE with the specified version into it (i.e. sub-folders of "AdoptOpenJDK\jdk-21.0.112jre\" need to be "bin", "conf", "legal", "lib", etc.).

Dependencies

Needs to be pre-installed: * Java Development Kit (JDK) version 21.0.1 or higher * Adoptium Open JDK (as one possible source of the JDK) * Gradle version 8.5 * Gradle Build Tool

Managed by Gradle: * JavaFX version 21.0.1 * Open JavaFX * GNU General Public License (GPL) Version 2 * Chemistry Development Kit (CDK) version 2.11 * Chemistry Development Kit on GitHub * License: GNU Lesser General Public License 2.1 * JUnit version 5.11.4 * JUnit 5 * License: Eclipse Public License 2.0 * LibrePDF OpenPDF version 2.0.3 * OpenPDF GitHub repository * License: GNU Lesser General Public License 2.1 * Spotless version 7.0.2 * Spotless GitHub repository * License: Apache-2.0 license

Citation

You can cite this software or this repository as it is defined in the CITATION.cff file. Also, please cite our scientific article (MORTAR: a rich client application for in silico molecule fragmentation (Baensch et al. 2023)).

References and useful links

MORTAR Download statistics: GitHub Release Stats by tooomm

Ertl algorithm * Ertl P. An algorithm to identify functional groups in organic molecules. J Cheminform. 2017; 9:36. * Fritsch S, Neumann S, Schaub J, Steinbeck C, Zielesny A. ErtlFunctionalGroupsFinder: automated rule-based functional group detection with the Chemistry Development Kit (CDK). J Cheminform. 2019; 11:37 * ErtlFunctionalGroupsFinder on GitHub

Sugar Removal Utility * Schaub, J., Zielesny, A., Steinbeck, C., Sorokina, M. Too sweet: cheminformatics for deglycosylation in natural products. J Cheminform 12, 67 (2020). https://doi.org/10.1186/s13321-020-00467-y * Schaub, J., Zielesny, A., Steinbeck, C., Sorokina, M. Description and Analysis of Glycosidic Residues in the Largest Open Natural Products Database. Biomolecules 2021, 11, 486. https://doi.org/10.3390/biom11040486 * SRU Source code * Sugar Removal Web Application * Source Code of Web Application

Scaffold Generator * Schaub, J., Zander, J., Zielesny, A., Steinbeck, C. Scaffold Generator: a Java library implementing molecular scaffold functionalities in the Chemistry Development Kit (CDK). J Cheminform 14, 79 (2022). https://doi.org/10.1186/s13321-022-00656-x. * G. W. Bemis and M. A. Murcko, “The Properties of Known Drugs. 1. Molecular Frameworks,” J. Med. Chem., vol. 39, no. 15, pp. 2887–2893, Jan. 1996, doi: 10.1021/jm9602928. * S. J. Wilkens, J. Janes, and A. I. Su, “HierS: Hierarchical Scaffold Clustering Using Topological Chemical Graphs,” J. Med. Chem., vol. 48, no. 9, pp. 3182–3193, May 2005, doi: 10.1021/jm049032d. * M. A. Koch et al., “Charting biologically relevant chemical space: A structural classification of natural products (SCONP),” Proceedings of the National Academy of Sciences, vol. 102, no. 48, pp. 17272–17277, Nov. 2005, doi: 10.1073/pnas.0503647102. * A. Schuffenhauer, P. Ertl, S. Roggo, S. Wetzel, M. A. Koch, and H. Waldmann, “The Scaffold Tree − Visualization of the Scaffold Universe by Hierarchical Scaffold Classification,” J. Chem. Inf. Model., vol. 47, no. 1, pp. 47–58, Jan. 2007, doi: 10.1021/ci600338x. * T. Varin et al., “Compound Set Enrichment: A Novel Approach to Analysis of Primary HTS Data,” J. Chem. Inf. Model., vol. 50, no. 12, pp. 2067–2078, Dec. 2010, doi: 10.1021/ci100203e. * T. Varin, A. Schuffenhauer, P. Ertl, and S. Renner, “Mining for Bioactive Scaffolds with Scaffold Networks: Improved Compound Set Enrichment from Primary Screening Data,” J. Chem. Inf. Model., vol. 51, no. 7, pp. 1528–1538, Jul. 2011, doi: 10.1021/ci2000924. * C. Manelfi et al., “‘Molecular Anatomy’: a new multi-dimensional hierarchical scaffold analysis tool,” J Cheminform, vol. 13, no. 1, p. 54, Dec. 2021, doi: 10.1186/s13321-021-00526-y.

Chemistry Development Kit (CDK) * Chemistry Development Kit on GitHub * Steinbeck C, Han Y, Kuhn S, Horlacher O, Luttmann E, Willighagen EL. The Chemistry Development Kit (CDK): An Open-Source Java Library for Chemo- and Bioinformatics. J Chem Inform Comput Sci. 2003;43(2):493-500. * Steinbeck C, Hoppe C, Kuhn S, Floris M, Guha R, Willighagen EL. Recent Developments of the Chemistry Development Kit (CDK) - An Open-Source Java Library for Chemo- and Bioinformatics. Curr Pharm Des. 2006; 12(17):2111-2120. * May JW and Steinbeck C. Efficient ring perception for the Chemistry Development Kit. J. Cheminform. 2014; 6:3. * Willighagen EL, Mayfield JW, Alvarsson J, Berg A, Carlsson L, Jeliazkova N, Kuhn S, Pluskal T, Rojas-Chertó M, Spjuth O, Torrance G, Evelo CT, Guha R, Steinbeck C, The Chemistry Development Kit (CDK) v2.0: atom typing, depiction, molecular formulas, and substructure searching. J Cheminform. 2017; 9:33. * Groovy Cheminformatics with the Chemistry Development Kit

Acknowledgements

Developers: * Felix Baensch * Jonas Schaub * Betuel Sevindik * Samuel Behr * Julian Zander * Zeynep Dagtekin * Tom Weiss

Logo: * Kohulan Rajan

Initialization, conceptualization, and supervision: * Christoph Steinbeck and Achim Zielesny

MORTAR was developed at:

Zielesny Research Group
Westphalian University of Applied Sciences
August-Schmidt-Ring 10
D-45665 Recklinghausen Germany

and

Steinbeck Research Group
Institute for Inorganic and Analytical Chemistry
Friedrich-Schiller-University Jena
Lessingstraße 8
D-07743 Jena

The MORTAR project team would like to thank the communities behind the open software libraries the application employs for their amazing work.

Owner

  • Name: Felix Bänsch
  • Login: FelixBaensch
  • Kind: user
  • Location: Recklinghausen, Germany

Citation (CITATION.cff)

cff-version: 1.2.0
title: MORTAR
version: "1.4.0.0"
message: "If you use this software, please cite it as below."
type: software
authors:
  - family-names: "Baensch"
    given-names: "Felix"   
    orcid: "https://orcid.org/0000-0001-8973-8463"
  - family-names: "Schaub"
    given-names: "Jonas"
    orcid: "https://orcid.org/0000-0003-1554-6666"
  - family-names: "Sevindik"
    given-names: "Betuel"    
    orcid: "https://orcid.org/0000-0002-9448-8603"
  - family-names: "Behr"
    given-names: "Samuel"    
    orcid: "https://orcid.org/0000-0002-5278-229X"
  - family-names: "Zander"
    given-names: "Julian"    
    orcid: "https://orcid.org/0000-0001-8197-076X"
  - family-names: "Dagtekin"
    given-names: "Zeynep"
  - family-names: "Weiss"
    given-names: "Tom"
  - family-names: "Steinbeck"
    given-names: "Christoph"    
    orcid: "https://orcid.org/0000-0001-6966-0814"
  - family-names: "Zielesny"
    given-names: "Achim"    
    orcid: "https://orcid.org/0000-0003-0722-4229"
doi: "10.5281/zenodo.6984804"
date-released: 2025-07-03
url: "https://github.com/FelixBaensch/MORTAR"
license: MIT
references:
  - authors:
      - family-names: "Baensch"
        given-names: "Felix"
        orcid: "https://orcid.org/0000-0001-8973-8463"
      - family-names: "Schaub"
        given-names: "Jonas"
        orcid: "https://orcid.org/0000-0003-1554-6666"
      - family-names: "Sevindik"
        given-names: "Betuel"
        orcid: "https://orcid.org/0000-0002-9448-8603"
      - family-names: "Behr"
        given-names: "Samuel"
        orcid: "https://orcid.org/0000-0002-5278-229X"
      - family-names: "Zander"
        given-names: "Julian"
        orcid: "https://orcid.org/0000-0001-8197-076X"
      - family-names: "Steinbeck"
        given-names: "Christoph"
        orcid: "https://orcid.org/0000-0001-6966-0814"
      - family-names: "Zielesny"
        given-names: "Achim"
        orcid: "https://orcid.org/0000-0003-0722-4229"
    doi: "10.1186/s13321-022-00674-9"
    journal: "J Cheminform"
    scope: "Cite this article if you want to reference the general concepts of the software."
    title: "MORTAR: a rich client application for in silico molecule fragmentation"
    type: article
    year: 2023
    volume: 15
    issue: 1

GitHub Events

Total
  • Create event: 21
  • Release event: 3
  • Issues event: 33
  • Watch event: 7
  • Delete event: 19
  • Issue comment event: 222
  • Push event: 203
  • Gollum event: 1
  • Pull request event: 45
  • Pull request review event: 107
  • Pull request review comment event: 169
Last Year
  • Create event: 21
  • Release event: 3
  • Issues event: 33
  • Watch event: 7
  • Delete event: 19
  • Issue comment event: 222
  • Push event: 203
  • Gollum event: 1
  • Pull request event: 45
  • Pull request review event: 107
  • Pull request review comment event: 169

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 66
  • Total pull requests: 64
  • Average time to close issues: 3 months
  • Average time to close pull requests: 14 days
  • Total issue authors: 4
  • Total pull request authors: 6
  • Average comments per issue: 1.41
  • Average comments per pull request: 1.78
  • Merged pull requests: 47
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 22
  • Pull requests: 25
  • Average time to close issues: about 2 months
  • Average time to close pull requests: 5 days
  • Issue authors: 3
  • Pull request authors: 3
  • Average comments per issue: 0.27
  • Average comments per pull request: 1.96
  • Merged pull requests: 18
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • JonasSchaub (52)
  • FelixBaensch (12)
  • Kohulan (1)
  • ToLeWeiss (1)
Pull Request Authors
  • JonasSchaub (52)
  • FelixBaensch (8)
  • ToLeWeiss (1)
  • SamuelBehr (1)
  • Kohulan (1)
  • steinbeck (1)
Top Labels
Issue Labels
enhancement (19) bug (19) to do (7) documentation (3)
Pull Request Labels
enhancement (10) bug (10) documentation (6) to do (1)

Dependencies

.github/workflows/gradle.yml actions
  • actions/checkout v3 composite
  • actions/setup-java v3 composite
  • gradle/gradle-build-action 67421db6bd0bf253fb4bd25b31ebb98943c375e1 composite
build.gradle maven
  • org.jetbrains:annotations 19.0.0 implementation
  • org.junit.jupiter:junit-jupiter * testImplementation