Skip to content

πŸ“Š User-friendly mass spectrometry and chromatography data analysis app with native UI, graphing, quantification, MS/MS and data export capabilities

License

Notifications You must be signed in to change notification settings

MateuszFido/LCMSpector

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

445 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

License: MIT DOI Tests

LCMSpector Logo

LCMSpector

An open-source desktop application for analyzing targeted mass spectrometry (LC/GC-MS) data. Process raw files, trace compounds, compare spectra, and quantify β€” all locally on your machine. See the wiki for full documentation.

LCMSpector interface

Features

  • Trace compounds in raw mass spectrometry data via extracted ion chromatograms (XICs)
  • Analyze and process LC/GC chromatograms with automatic baseline correction and peak detection
  • View MS spectra scan-by-scan at any retention time
  • Overlay and compare multiple files simultaneously on the same plot
  • Look up compound m/z values from PubChem by name
  • Compute theoretical isotopic patterns from molecular formulas and overlay on spectra
  • Predict b/y fragment ions for peptide sequences
  • Customize m/z integration boundaries per compound via interactive dialog
  • Select from 13 adducts (positive and negative) for m/z calculation
  • Quantify concentrations using built-in linear regression calibration
  • Look up MS2 spectra on-demand from mzML files for compound verification
  • Export plots (SVG, TIFF, PNG, JPG) and data (CSV)
  • High-performance mzML parsing via a custom lxml-based reader
  • Vendor-agnostic: accepts .mzML, .txt, and .csv files
  • Runs on Windows, macOS, and Linux

Installation

Desktop app

Pre-built executables for Windows, macOS, and Linux are available under Releases.

  • Windows: If Windows Defender blocks the app, go to Protection history, find the LC-Inspector entry, and click Restore. If "Windows protected your PC" appears, click More info then Run anyway.
  • macOS: Remove the app from quarantine: xattr -d com.apple.quarantine /path/to/app.app. Alternatively, go to System Settings > Privacy & Security and click Open Anyway.

From source

  1. Clone the repository

  2. Install Python 3.13+ and uv

  3. Install dependencies:

    uv sync --frozen
  4. Run the application:

    python lcmspector/main.py

Usage

  1. Drag and drop your mass spectrometry and/or chromatography files into the main window
  2. Choose a compound list or define your own (compound names are automatically looked up on PubChem)
  3. Click Process
  4. View results: TIC, XICs, labelled chromatograms, and raw MS scans
  5. Verify compounds with on-demand MS2 spectrum lookup
  6. Quantify using calibration standards

Docker

Docker is an alternative if you prefer not to install the app directly. Currently Linux-only (requires X11).

You need Podman or Docker Engine (not Docker Desktop β€” it cannot forward X11 from its VM).

# Build
podman build -t lcmspector .

# Run (Podman)
xhost +local:
podman run --rm --security-opt label=disable \
  -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix lcmspector
xhost -local:

# Run (Docker Engine) β€” no --security-opt needed
xhost +local:
docker run --rm -e DISPLAY=$DISPLAY \
  -v /tmp/.X11-unix:/tmp/.X11-unix lcmspector
xhost -local:

To access local files, mount your data directory: -v /path/on/host:/data.

Contributing

Contributions are welcome. Open an issue to report bugs or suggest features (please attach logs for bug reports), or submit a pull request with your changes.

License

LCMSpector is distributed under the MIT License.

It includes MS/MS libraries from the MoNA database, distributed under the CC BY 4.0 License. No changes are made to the library content.