mSigSDK is a JavaScript Software Development Kit (SDK) designed to facilitate mutational signature analysis entirely within a web browser. Built to support research workflows involving mutational data, it interacts with APIs from mSigPortal and adheres to modern web standards, ensuring compatibility, scalability, and privacy.
This SDK allows researchers to analyze patient-specific genomic data without downloading sensitive information, providing a secure and private computational environment. With mSigSDK, researchers can:
- Visualize and compare mutational signatures.
- Perform dimensionality reduction, hierarchical clustering, and more.
- Extend functionality to other mutation signature ecosystems such as SIGNAL or COSMIC.
- In-Browser Computation: All analyses are performed client-side using the user's computational resources.
- Modular Design: Adheres to ECMAScript ES6 standards, enabling easy integration and extension.
- Visualizations: Supports multiple interactive visualizations via Plotly and AMCharts.
- APIs: Seamlessly integrates with mSigPortal's REST APIs to fetch mutational signature data and metadata.
- Data Privacy: No data is sent to external servers; all operations are secure and local.
- Extensibility: Designed for interoperability with future APIs and datasets.
This is all you need to do to run mSigSDK. You don't need to install anything:
- Navigate to any website that has not blocked module loading (e.g., https://dceg.cancer.gov/).
- Use
Fn + F12
to open your browser's developer console. - Fetch the SDK by typing the following code into the console:
mSigSDK = (await import("https://episphere.github.io/msig/main.js")).mSigSDK
- Fetch some data from mSigPortal by typing the following code into the console:
data = await mSigSDK.mSigPortal.mSigPortalData.getMutationalSpectrumData()
The source code is hosted on GitHub: mSigSDK Repository.
Explore interactive examples: Observable Notebooks.
Aaron Ge
Division of Cancer Epidemiology and Genetics, National Cancer Institute.
Email: [email protected].
This project is open-source and available under the MIT license.