Python wrapper for C++ LC-MS library OpenMS


Keywords
3-clause-bsd, algorithms, analyses, c-plus-plus, hacktoberfest, linux, macos, mass-spectrometry, metabolomics, ms-data, openms, proteomics, windows
License
BSD-3-Clause
Install
pip install pyopenms==3.1.0

Documentation

OpenMS

License (3-Clause BSD) Project Stats Discord Shield Gitter Install with bioconda Install with conda Documentation API docs Gitpod Ready-to-Code

OpenMS is an open-source software C++ library for LC-MS data management and analyses. It offers an infrastructure for rapid development of mass spectrometry related software. OpenMS is free software available under the three clause BSD license and runs under Windows, macOS, and Linux.

It comes with a vast variety of pre-built and ready-to-use tools for proteomics and metabolomics data analysis (TOPPTools) as well as powerful 1D, 2D and 3D visualization (TOPPView).

OpenMS offers analyses for various quantitation protocols, including label-free quantitation, SILAC, iTRAQ, TMT, SRM, SWATH, etc.

It provides built-in algorithms for de-novo identification and database search, as well as adapters to other state-of-the art tools like X!Tandem, Mascot, Comet, etc. It supports easy integration of OpenMS built tools into workflow engines like KNIME, Galaxy, WS-Pgrade, and TOPPAS via the TOPPtools concept and a unified parameter handling via a 'common tool description' (CTD) scheme.

With pyOpenMS, OpenMS offers Python bindings to a large part of the OpenMS API to enable rapid algorithm development. OpenMS supports the Proteomics Standard Initiative (PSI) formats for MS data. The main contributors of OpenMS are currently the Eberhard-Karls-Universität in Tübingen, the Freie Universität Berlin, and the ETH Zürich.

Features

  • Core C++ library under three-clause BSD licence using modern C++17
  • Python bindings to the C++ API through pyOpenMS
  • Major community file formats supported (mzML, mzXML, mzIdentXML, pepXML, mzTab, etc.)
  • Over 150+ individual analysis tools (TOPP Tools), covering most MS and LC-MS data processing and mining tasks
  • Powerful 1D, 2D and 3D visualization tools (TOPPView)
  • Support for most MS identification and quantification workflows (targeted, DIA, label-free, isobaric and stable isotope)
  • Support for all major platforms (Windows [XP, 7, 8, 10], macOS and Linux)

Documentation

Users and developers should start by reading the OpenMS documentation. OpenMS API reference documentation and advanced developer doxygen documentation can be browsed here.

openms.readthedocs.io documentation aims at being an entry point for users and developers alike. It is trying to be mostly version-independent and therefore only consists of one main branch. We may introduce tags for older releases in the future.

The OpenMS API reference has several endpoints:

  1. nightly: OpenMS API reference and advanced developer documentation of nightly releases.
  2. release/latest : OpenMS API reference and advanced developer documentation of latest stable release.
  3. release/${version} : OpenMS API reference and advanced developer documentation of an older version.

Documentation for the Python bindings pyOpenMS can be found on the pyOpenMS online documentation.

Citation

Please cite:

Pfeuffer, J., Bielow, C., Wein, S. et al. OpenMS 3 enables reproducible analysis of large-scale mass spectrometry data, Nat Methods 21, 365–367 (2024). https://doi.org/10.1038/s41592-024-02197-7

The file AUTHORS contains a list of all authors who worked on OpenMS.

Licence

OpenMS is released under the three clause BSD licence.