Skip to main content
Alpha Cyanea is in public alpha. We're building in the open — expect rough edges and rapid iteration. See what's live

cyanea-proteomics

v0.1.0 Analysis

From spectra to quantified proteins, with FDR you can trust.

Analysis layer Apache-2.0 8 functions

Mass spectrometry proteomics — spectrum I/O, in-silico digestion, PSM scoring, protein inference, quantification, and FDR control.

Overview

cyanea-proteomics is a mass-spectrometry toolkit for bottom-up proteomics. It parses spectra, digests proteins in silico, generates fragment ions, scores peptide-spectrum matches, infers proteins, quantifies abundance, and controls error rates with target-decoy FDR — and writes results in mzTab.

Key Concepts

Digestion and Fragmentation

Proteins are cleaved by a chosen protease (trypsin and others) with a configurable number of missed cleavages, producing the peptide search space. For each candidate peptide, the crate predicts b/y/a fragment ion series — including common modifications such as carbamidomethylation, oxidation, phosphorylation, and TMT/iTRAQ labels.

PSM Scoring

Observed spectra are matched against predicted fragments and scored with XCorr and hyperscore. Scores drive both identification and downstream error control.

Protein Inference

Peptides rarely map to a single protein. Parsimony-based inference reports the minimal set of proteins that explains the observed peptides, avoiding inflated protein lists.

Quantification and FDR

Abundance is measured by TMT reporter ions or label-free intensity. Target-decoy analysis estimates the false discovery rate, giving a principled threshold for accepting identifications.

Code Examples

Rust

use cyanea_proteomics::{digest, Enzyme, score_psm, ScoreMethod};

let peptides = digest(&protein, Enzyme::Trypsin, 2);
let score = score_psm(&spectrum, &peptide, ScoreMethod::Hyperscore);

JavaScript (WASM)

import { digest, target_decoy_fdr } from '/wasm/cyanea_wasm.js';

const peptides = JSON.parse(digest(protein, "trypsin", 2));
const fdr = JSON.parse(target_decoy_fdr(JSON.stringify(scores), JSON.stringify(labels)));

Use Cases

  • Shotgun proteomics — Identify and quantify proteins from LC-MS/MS runs.
  • Quantitative comparisons — TMT or label-free abundance across conditions.
  • Rigorous reporting — Target-decoy FDR and mzTab output for publication.

API Surface

parse_mgf (text: &str) -> JSON Parse MGF spectra into peak lists
digest (protein, enzyme, missed) -> JSON In-silico digestion (trypsin, LysC, chymotrypsin, AspN, GluC)
fragment_ions (peptide, mods) -> JSON Generate b/y/a fragment ion series
score_psm (spectrum, peptide, method) -> f64 Peptide-spectrum match scoring (XCorr, hyperscore)
infer_proteins (psms: &str) -> JSON Parsimony-based protein inference
quantify_tmt (psms, channels) -> JSON TMT reporter-ion quantification
quantify_lfq (psms: &str) -> JSON Label-free quantification
target_decoy_fdr (scores, labels) -> JSON Target-decoy false discovery rate estimation

Depended on by

Tags

Proteomics Mass Spec Quantification FDR