Metadata-Version: 2.4
Name: scpviz
Version: 0.6.0
Summary: A package to visualize single cell proteomics (and more to come!) data
Author-email: Marion Pang <sr_pang@hotmail.com>
Project-URL: Homepage, https://github.com/gnaprs/scpviz
Project-URL: Issues, https://github.com/gnaprs/scpviz/issues
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Development Status :: 5 - Production/Stable
Classifier: Operating System :: OS Independent
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: numpy>=1.21
Requires-Dist: pandas>=1.3
Requires-Dist: matplotlib>=3.5
Requires-Dist: seaborn>=0.12
Requires-Dist: upsetplot>=0.6
Requires-Dist: scikit-learn>=1.0
Requires-Dist: scipy>=1.7
Requires-Dist: umap-learn>=0.5
Requires-Dist: adjustText>=0.7
Requires-Dist: anndata>=0.8
Requires-Dist: requests>=2.27
Requires-Dist: matplotlib_venn>=0.11
Requires-Dist: pyarrow>=7.0
Requires-Dist: scanpy>=1.9
Requires-Dist: gseapy>=1.0
Requires-Dist: openpyxl>=3.1.5
Provides-Extra: sc
Requires-Dist: directlfq>=0.2; extra == "sc"
Requires-Dist: pimms-learn>=0.5.2; extra == "sc"
Requires-Dist: harmonypy>=0.0.5; extra == "sc"
Requires-Dist: leidenalg>=0.9; extra == "sc"
Requires-Dist: igraph>=0.10; extra == "sc"
Requires-Dist: scikit-misc>=0.2; extra == "sc"
Provides-Extra: notebook
Requires-Dist: IPython>=7.31; extra == "notebook"
Provides-Extra: dev
Requires-Dist: pytest>=9.0.3; extra == "dev"
Requires-Dist: coverage>=7.13.5; extra == "dev"
Requires-Dist: flake8>=7.3.0; extra == "dev"
Requires-Dist: pytest-cov>=7.1.0; extra == "dev"
Provides-Extra: docs
Requires-Dist: mkdocs-material>=9.7.5; extra == "docs"
Requires-Dist: mkdocstrings<0.31,>=0.29.1; extra == "docs"
Requires-Dist: mkdocstrings-python<2,>=1.16.2; extra == "docs"
Requires-Dist: mkdocs-literate-nav; extra == "docs"
Requires-Dist: mkdocs-section-index; extra == "docs"
Requires-Dist: pymdown-extensions; extra == "docs"
Requires-Dist: black; extra == "docs"
Dynamic: license-file

# scpviz
<img src="https://raw.githubusercontent.com/gnaprs/scpviz/refs/heads/main/docs/assets/300ppi/logo_white_label@300x.png"
 align="right" width="200"/>
 [![DOI](https://zenodo.org/badge/762480088.svg)](https://doi.org/10.5281/zenodo.17362532)

**Build & Tests:**  
[![codecov](https://codecov.io/gh/gnaprs/scpviz/branch/main/graph/badge.svg)](https://codecov.io/gh/gnaprs/scpviz)

**CI Matrix Status:**
| Python | Ubuntu | macOS | Windows |
|--------|--------|--------|----------|
| **3.11** | ![Ubuntu-3.11](https://github.com/gnaprs/scpviz/actions/workflows/ubuntu-3.11.yml/badge.svg) | ![macOS-3.11](https://github.com/gnaprs/scpviz/actions/workflows/macos-3.11.yml/badge.svg) | ![Windows-3.11](https://github.com/gnaprs/scpviz/actions/workflows/windows-3.11.yml/badge.svg) |
| **3.10** | ![Ubuntu-3.10](https://github.com/gnaprs/scpviz/actions/workflows/ubuntu-3.10.yml/badge.svg) | ![macOS-3.10](https://github.com/gnaprs/scpviz/actions/workflows/macos-3.10.yml/badge.svg) | ![Windows-3.10](https://github.com/gnaprs/scpviz/actions/workflows/windows-3.10.yml/badge.svg) |

**Documentation:**  
[![Docs CI](https://github.com/gnaprs/scpviz/actions/workflows/docs.yml/badge.svg)](https://github.com/gnaprs/scpviz/actions/workflows/docs.yml)
[![Docs](https://img.shields.io/badge/docs-v0.6.0-brightgreen.svg)](https://gnaprs.github.io/scpviz)

## Overview
**scpviz** is a Python package for single-cell and spatial proteomics data analysis, built around a custom `pAnnData` object.  
It extends the [AnnData](https://anndata.readthedocs.io/) ecosystem with proteomics-specific functionality, enabling seamless integration of proteins, peptides, and relational data.

* **Documentation**: https://gnaprs.github.io/scpviz/
* **Python Package Index (PyPI)**: https://pypi.org/project/scpviz/

## Getting started
### Installation

`scpviz` requires Python 3.10 or later. It is distributed as a Python package and can be installed with `pip`.

    pip install scpviz

This will install all required dependencies, including `scanpy`, `anndata`, `pandas`, and common plotting libraries.

For single-cell proteomics workflows (directLFQ normalization, Leiden clustering, Harmony batch correction, PIMMS imputation), install the `sc` extras:

    pip install scpviz[sc]

For the most up-to-date development version, clone the repository and install with pip:

    git clone https://github.com/gnaprs/scpviz.git
    cd scpviz
    pip install -e .

### Quickstart

Check out the [quickstart](https://gnaprs.github.io/scpviz/tutorials/quickstart/) guide for a run through import, basic preprocessing and quick visualization.

### In-depth Tutorials
For more in-depth guides on importing, filtering, plotting, and running enrichment, see the [tutorials](https://gnaprs.github.io/scpviz/tutorials/).

### API Reference

Full function documentation for the `pAnnData` class and utility modules can be found on our [documentation page](https://gnaprs.github.io/scpviz/reference/).

## Contributing

If you'd like to contribute to `scpviz`, please see the [contributing guidelines](https://gnaprs.github.io/scpviz/dev/contributing/) and [code of conduct](https://gnaprs.github.io/scpviz/dev/CODE_OF_CONDUCT/). We welcome contributions from the community to help improve, expand, and document the functionality of scpviz.

## License
`scpviz` was created by Marion Pang and contributors. It is licensed under the terms of the MIT license.
