Skip to content

Repository files navigation

FusionPep

Peptide mapping and junction review for fusion proteins.

R 4.6+ Bioconductor 3.23 Pre-release CI Coverage MIT

Changelog Citation Docs

FusionPep maps peptide sequences, supplied directly or from a peptide-spectrum match (PSM) export, to a proposed fusion protein and its two parent proteins. It reports every mapped occurrence, parent sharing, residue coverage, and global and local fusion-to-parent alignments. When junction coordinates are supplied, it checks whether each occurrence crosses a junction with the required number of residues on both sides. The results come together in an HTML report, with CSV tables, an R result object, and publication-sized PNG and PDF figures.

FusionPep analyzes sequence matches. It does not search spectra, validate PSMs, or establish peptide detection, FDR-controlled evidence, or biological fusion expression. Absence from the two supplied parents does not show that a peptide is unique across the proteome.

The FusionPep example report: summary counts and the junction decision figure for the bundled PML::RARA example

The example report for the bundled PML::RARA data. Tour every report section.

Quick start

FusionPep needs R 4.6.0 or newer. Setup bootstraps renv and installs the locked dependency versions into a project-local library:

git clone https://github.com/LangeLab/FusionPep.git
cd FusionPep
Rscript setup_renv.R
Rscript run_fusion_mapper.R --output=results/example

Open results/example/fusion_peptide_mapper_report.html. The bundled PML::RARA example uses literature reference peptides and controls, not PSMs measured by this project. The worked example explains its decisions, and the input source notes record the verified sources and the longer peptide's unconfirmed literature attribution.

Setup needs network access, and compiling dependencies can need a system build toolchain; on Linux, also install the zlib development headers (for example zlib1g-dev). PDF figures need an R build with Cairo graphics.

Analyze your own data

Supply a protein FASTA with records named Fusion, ParentA, and ParentB, a peptide CSV with a peptide column, and a junction CSV:

Rscript run_fusion_mapper.R \
  --fasta=input/my-fusion.fasta \
  --peptides=input/my-peptides.csv \
  --junctions=input/my-junctions.csv \
  --output=results/my-fusion

Pass every input explicitly: an omitted input falls back to the bundled example file. Relative paths resolve from the project root. Input formats describes each file, and Rscript run_fusion_mapper.R --help lists all options.

Use from R

The same analysis is available as R functions, which return the results without writing files:

for (path in list.files("R", pattern = "[.]R$", full.names = TRUE)) source(path)

result <- run_fusion_analysis(
  sequence_file = "input/sequences.fasta",
  peptide_file = "input/peptides.csv",
  junction_file = "input/fusion_junctions.csv"
)
result$peptide_summary

R interface covers the arguments, the returned object, and writing outputs and reports.

Documentation

The documentation lives in the wiki/ directory, which is also the source of the GitHub Wiki.

Development

Run the tests with the project library installed:

Rscript -e 'testthat::test_dir("tests/testthat")'

Rscript check_project.R runs the full local gate: parsing, lint, tests, the bundled example, and output checks. It regenerates results/, so keep any earlier run elsewhere. Continuous integration runs the same gate with a coverage floor on Linux, and the tests on macOS and Windows. Changes are recorded in CHANGELOG.md. Pushing a vX.Y.Z tag that matches the version publishes a GitHub release with that version's changelog section as notes.

Issue reports and contributions are welcome through GitHub issues.

Citation

If you use FusionPep in your work, please cite it:

@software{ergin_fusionpep_2026,
  author  = {Ergin, Enes K. and Conrrero, Agustina and Lange, Philipp F.},
  title   = {{FusionPep}: Peptide mapping and junction review for fusion proteins},
  year    = {2026},
  url     = {https://github.com/LangeLab/FusionPep},
  license = {MIT},
}

CITATION.cff carries the same metadata for tools that read it, including GitHub's Cite this repository button.

License

MIT License; see LICENSE. The bundled reference sequences keep the source attribution in input/README.md.

About

Peptide mapping and junction review for fusion proteins.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages