MSFileParserApp is a Python Dash web application that parses targeted mass spectrometry experiment from Skyline and converts them into a 2D matrix format for downstream statistical or bioinformatics analysis.
This tool is ideal for labs and analysts looking for a fast, browser-based interface to convert Skyline output into a pivoted matrix (samples × analytes).
⚠️ Notice: Since updating the layout, the app may currently throw warnings or errors when switching between Concentration, Response, or Area as the selected feature quantifier. If conversion does not complete or an error occurs, please open an issue or contact me via email at [email protected].
- Parses .TXT` Skyline data files
- Extracts quantification metrics like Concentration, Response, or Area
- Supports toggling of internal standard inclusion
- Transforms long-form MS data into a pivoted matrix: samples × analytes
- Allows direct CSV download of the processed matrix
- Provides a clean, responsive UI with
dash-mantine-components
MSFileParserApp/
├── app.py # Dash app (recommend renaming to massspec_dash_app.py)
├── scr/
│ └── conv.py # Core logic for file decoding and data transformation
├── requirements.txt # Python dependencies
├── README.md # Project overview and usage
# Clone the repo
git clone https://github.com/tkimhofer/MSFileParserApp.git
cd MSFileParserApp
# Set up a virtual environment (optional but recommended)
python -m venv venv
source venv/bin/activate # or venv\Scripts\activate on Windows
# Install dependencies
pip install -r requirements.txt
python app.py
Navigate to http://127.0.0.1:8050 in your browser.
- A pivoted data matrix: rows = samples, columns = analytes
- Index includes path and sample name
- Exported as
.csv
with dynamic naming:df_conc_[datetime].csv
- Preprocessing of Skyline output for statistical analysis
- Generating clean feature matrices for machine learning
- Quick QC of targeted LC-MS data via web interface
- Dash
- Pandas
- Plotly
- dash-mantine-components
MIT License
- Developed by @tkimhofer
- Built with Dash
- UI powered by dash-mantine-components