Main Features
Free & Open Source
mMass belongs to the wide family of open source software. It is written in Python language, uses wxPython libraries for graphic user interface and is released under GNU General Public License. Therefore it is portable to different computer platforms and has a good potential to be easily modified or extended by modules of specific needs.

Spectrum Manipulation
Since most time in data interpretation is spent manipulating spectra (e.i. moving, shifting, scaling, zooming etc.), I aimed to make these functions as easy and user friendly as possible. There are no specific buttons or menu items hidden deep inside the application menu just to zoom spectrum. Everything is accessible by mouse, keyboard or combination of both. Vertical spectra flipping, Gel View or Spectrum Offset can be used to effectively compare your sample with any standard or blank spectrum. In addition, Spectrum Viewer not only provides for spectrum visualization, but also offers some other useful features such as peak labeling and distance measurements.

Multiple Format Support
mMass supports several mass spectrometry formats, such as mzData, mzXML and mzML. Mass spectra or peaklist data can also be easily imported from simple ASCII files consisting of two columns (m/z values and intensity values) separated by a tab, space, comma or semicolon. In addition, there is a support for raw data from Bruker's instruments (CompassXport tool needs to be installed on your computer, available for free on www.bdal.de).
mMass is so-called single-spectrum-editor therefore experiments such as LC-MS runs cannot be analyzed by mMass. However, it is possible to open any selected scan from such runs to analyze it separately if necessary.
One of the popular features of mMass is the ability to open a blank document and create peaklist manually. This feature is particularly useful in those cases where spectrum image or printed list of labelled peaks is available only.
Data Processing
mMass offers number of common data processing functions such as data crop, baseline correction, smoothing, peak picking, charging and de-isotoping. In order to avoid permanent changing of parameters and speed up the processing of data from different instruments you can define your own processing presets and use it frequently. For smoothing and baseline correction a preview is available and recommended to use before applying to your data.

Calibration
Using mMass re-calibration tool, acquired data can be corrected by external or internal calibration or in case of protein digests, statistical calibration can be utilized. Once reference masses are automatically assigned, calibration constants are calculated and corresponding error plot is immediately shown. The resulting calibration can then be applied to any opened spectrum.
For every mMass tool, where some theoretical masses are compared with acquired data, an error plot is shown to reveal miss-calibrations. Such tools provide an easy way to use identified peaks as reference masses for data re-calibration. Although this feature must be used carefully, it can improve the data quality and reveal false positive matches in many cases.

Sequence Tools
mMass provides an internal Sequence Editor, which can be used to make any protein or peptide sequence available to other modules. Any modification can be applied either as fixed or variable. The Protein Digest tool can be used to generate a list of peptides resulting from in silico enzymatic or chemical digestion of a sequence. Similarly, the Peptide Fragmentation tool generates a list of common peptide fragments. In both cases, all possible combinations of variable modifications are calculated and result can be easily compared with measured data. In addition, sequence can be searched for a specific peptide mass by the Sequence Search tool to identify non-specific cleavages.

Mass Calculator
The Mass Calculator tool provides a utility for calculation of molecular weights, compositions, ion series and isotopic pattern simulations. Molecular formulae can be manually typed but the true advantage of this calculator is the ability to obtain the data from other mMass tools. Isotopic patterns for any in silico generated item such as a peptide, fragment or any other compound can be modeled with a single mouse click and overlaid with acquired data. With this general tool one can reveal peak overlaps and false positive matches or validate compounds with specific isotopic profiles.

Compounds Search
Searching for specific compounds in acquired data still remains one of the most common tasks in mass spectrometry. Small compounds are often ionized in the form of different adducts and interpretation of such complex spectra is often a laborious task. mMass provides a dedicated tool to automate and speed-up this process. The users can define their own database of compounds of interest which can be searched and compared with the acquired data. Different adducts, charge states and mass tolerances can be specified by the user. All the matched peaks can be automatically annotated and an error plot is shown. To validate the data, calculation of the theoretical isotopic pattern of a particular compound (and its overlay with the acquired data) is a matter of a single click.
With the permission from the original developers, a complex lipid database has been incorporated into mMass. Combination of the database with the mMass functionalities such as automatic peak annotations, isotopic pattern modeling, and data-recalibration makes the Compounds Search a powerful tool for lipidomic analyses. Once the matched peaks are annotated, a detailed report provides direct links to the LIPID MAPS Consortium via specific IDs to get more information about a particular lipid.

Peak Differences
Interpretation of mass spectra typically involves a seemingly never-ending check of the differences between all peaks in a spectrum. The Peak Differences tool is able to simply generate a table of all the differences between the peaks in the peak list. This table can then be used to automatically compare, within a specified tolerance, each difference with the respective masses of all amino acids, calculated dipeptides or specified m/z value. Peak Differences tool therefore provides a useful utility for de novo peptide sequencing or PTMs search.

Mascot and ProFound Search
Mass spectrometry is a very popular tool for protein identification but it would not be possible without the tools publicly available on-line. mMass provides the interfaces that allows data to be directly sent to the tools available on Mascot and ProFound websites. Once the Search button is pressed, temporary HTML page is generated containing all the parameters and the page is automatically sent to selected server.

Analysis Report
The Analysis Report can be generated from any document and all available information such as operator's contact, current spectrum image, user's notes and annotations, protein or peptide sequence, modifications and matches will be included. Analysis report is generated in the form of a HTML page which opens in a web browser and can be easily printed, saved or converted into PDF format to be sent to a client.

Periodic Table of the Elements
Periodic Table provides information about the elements. Different groups can be highlighted and element name, mass and isotopic pattern can be shown. For each element its detailed information can be seen on Wikipedia or The Photographic Periodic Table of the Elements using direct link.

And much more…
Watch the screencast videos to see mMass in action.
If you have any interesting idea or feature request feel free to send me your comments.