Version: 1.0.0
Commit Hash: 8fb277aed2bfec1fb03d26587f3e5ea8c5d4c821
Author: CauldronGO Team
Category: utilities
Subcategory: format-conversion
Convert MSFragger PTM single site output to CurtainPTM upload format. Extracts PTM positions from index columns, maps peptide sequences to proteins, and generates sequence windows around modification sites. Based on: Phung et al. (2024) PNAS 121(7):e2312676121. Repository: https://github.com/noatgnu/curtain-utils
MSFragger to CurtainPTM Converter
Installation
⬇️ Click here to install in Cauldron (requires Cauldron to be running)
Repository:
https://github.com/noatgnu/msfragger-curtainptm-converter-plugin
Manual installation:
- Open Cauldron
- Go to Plugins → Install from Repository
- Paste:
https://github.com/noatgnu/msfragger-curtainptm-converter-plugin - Click Install
ID: msfragger-curtainptm-converter
Version: 1.0.0
Category: utilities
Author: CauldronGO Team
Description
Convert MSFragger PTM single site output to CurtainPTM upload format. Extracts PTM positions from index columns, maps peptide sequences to proteins, and generates sequence windows around modification sites. Based on: Phung et al. (2024) PNAS 121(7):e2312676121. Repository: https://github.com/noatgnu/curtain-utils
Runtime
-
Environments:
python -
Entrypoint:
convert.py
Inputs
| Name | Label | Type | Required | Default | Visibility |
|---|---|---|---|---|---|
input_file |
MSFragger Output File | file | Yes | - | Always visible |
index_col |
Index Column Name | text | Yes | Index | Always visible |
peptide_col |
Peptide Column Name | text | Yes | Peptide | Always visible |
fasta_file |
FASTA File (Optional) | file | No | - | Always visible |
get_position_from_peptide |
Parse Position from Peptide Column | boolean | No | false | Always visible |
uniprot_columns |
UniProt Data Columns | text | No | accession,id,sequence,protein_name | Always visible |
output_filename |
Output Filename | text | No | curtainptm_input.txt | Always visible |
sequence_window_size |
Sequence Window Size | number (min: 1, max: 101, step: 2) | No | 21 | Always visible |
Input Details
MSFragger Output File (input_file)
MSFragger PTM output file containing differential analysis with site information in the Index column
Index Column Name (index_col)
Column name containing site information with accession ID and PTM position (e.g., P12345_S123)
- Placeholder:
Index
Peptide Column Name (peptide_col)
Column name containing peptide sequences
- Placeholder:
Peptide
FASTA File (Optional) (fasta_file)
Protein sequence FASTA file. If not provided, sequences will be fetched from UniProt automatically.
Parse Position from Peptide Column (get_position_from_peptide)
Enable this to extract PTM position from lowercase residues in the peptide sequence instead of the index column
UniProt Data Columns (uniprot_columns)
Comma-separated list of UniProt columns to retrieve when fetching sequences online
- Placeholder:
accession,id,sequence,protein_name
Output Filename (output_filename)
Name of the output file (will be created in the output folder)
- Placeholder:
curtainptm_input.txt
Sequence Window Size (sequence_window_size)
Size of the sequence window around modification sites (must be odd number). Default is 21 (10 residues before + modification + 10 after).
Outputs
| Name | File | Type | Format | Description |
|---|---|---|---|---|
converted_file |
*.txt |
data | tsv | Converted file in CurtainPTM upload format with PTM positions, sequence windows, and protein annotations |
Requirements
- Python Version: >=3.10
Python Dependencies (External File)
Dependencies are defined in: requirements.txt
curtainutils>=0.1.24pandas>=2.0.0click>=8.0.0
Note: When you create a custom environment for this plugin, these dependencies will be automatically installed.
Usage
Via UI
- Navigate to utilities → MSFragger to CurtainPTM Converter
- Fill in the required inputs
- Click Run Analysis
Via Plugin System
const jobId = await pluginService.executePlugin('msfragger-curtainptm-converter', {
// Add parameters here
});