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 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, etc. It supports easy integration of OpenMS built tools into workflow engines like KNIME, Galaxy, WS-Pgrade, and TOPPAS via the TOPP tools concept and a unified parameter handling via a ‘common tool description’ (CTD) scheme.
As part of the Center for Integrative Bioinformatics (CiBi) in the German Network for Bioinformatics deNBI, OpenMS is currently focusing the development efforts on the integration of OpenMS into KNIME. KNIME is a well-established data analysis framework that supports the generation of workflows for data analysis. Using a Common Tool Description (CTD) file which is writeable by every TOPP tool and a node generator program (Generic KNIME Nodes), all TOPP tools can be made available to run in KNIME.
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.
- OpenMS User Tutorial
- Worked Examples: Different OpenMS Methods to Achieve the Same Outcome
- Quick Start Guides
- OpenMS Git Workflow
- Write and Label GitHub Issues
- Adding New Tool to The TOPP suite
- The OpenMS pipeline (TOPP)
- What do I have to do to add a new TOPP tool?
- What do I have to do to add a new UTILS tool?
- I want to implement a new file adapter. What is to be done?
- How to create an icon file for a TOPP tool under Windows?
- Develop your Tool in an external project using OpenMS
- The Common Tool Description (CTD)
- Pull Request Checklist
- Reporting Bugs and Issues
- Contributor FAQ
- Developer FAQ
- Contact Us
- OpenMS Glossary