This release is a pre-release and may not be stable for production use.
CyteArc
CyteArc is a fast Python framework for single-cell RNA, ATAC, protein, and multi-omic analysis that scales to 100M+ cells. In benchmarks, it processed one million cells within 15 minutes, from cell filtering through UMAP and clustering to marker gene identification. On Tahoe-100M, the same workflow ran in under 20 hours without any subsampling.
Cytebase is a ready-to-connect repository of CyteArc datastores, containing approximately 200 million cells and 1.1 TB of data on Hugging Face. Mount remote datasets for reanalysis and build or reuse references for mapping new cells, without downloading the complete count matrix. Counts stay remote while you save your own results in a store you control.
CyteArc's built-in provenance connects saved results to the exact cells, features, parameters, and upstream computations that produced them, so you can reuse completed work and trace each analysis.
| Problem | How CyteArc solves it | What you get |
|---|---|---|
| Your dataset is larger than RAM | Out-of-core algorithms, and neighbour search streams from cell-major and gene-major layouts, inside a memory budget you set | Analyse the selected cells with explicit memory controls |
| The data is stored remotely and requires downloading | Fetches only the chunks an operation touches, and writes results to a store you own | Start analysing immediately, with one authoritative copy |
| A single parameter change costs hours of computation | Each step is fingerprinted by its settings and inputs, so reuse is by content, not by layer name | Only what changed recomputes, and the old version stays for comparison |
| Sub-population analysis leaves scattered copies that nobody can trace back | Subsets are masks in one file, and every result carries the cells and parameters behind it | A year later, a result still explains itself |
Install
Python 3.12+.
uv venv --python 3.12
uv pip install --python .venv "cytearc[extra]"
Detailed installation instructions here
Quick start
import cytearc
ds = cytearc.DataStore(
"s3://bucket/cells.zarr", # also gs://, hf://, or a local path
)
run = ds.pipeline.run() # durable QC → graph → UMAP → clustering → marker run
ds.plots.embedding(
run=run,
layout="umap",
color_by="clusters",
)
Read the scRNA-seq tutorial for a granular workflow, or remote stores for cloud setups.
Cytebase
Cytebase provides a searchable catalog of public datasets stored as cloud-hosted CyteArc DataStores. Search by study, tissue, disease, or organism, then explore published cell annotations and available embeddings. Public access needs no credentials.
Install the Cytebase extra alongside the analysis extras:
uv pip install --python .venv --prerelease allow "cytearc[cytebase,extra]"
from cytearc import cytebase
catalog = cytebase.Catalog()
matches = catalog.search("kidney")
print(matches)
# Open one of the matching datasets for read-only exploration.
dataset_id = matches[0]["cytebase_id"]
ds = catalog.open_datastore(dataset_id)
# Create a writable local store for your own analysis, keeping counts remote.
analysis = catalog.mount_datastore(dataset_id, at="kidney_analysis.zarr")
Use analysis with the pipeline shown above to save new results locally. Computation runs in your Python environment, reading count blocks over the network as needed.
Follow the Cytebase tutorial for catalog filters, plotting, and example notebooks, or see the Cytebase API reference.
Documentation
Read workflow vignettes and API references in the documentation.
CyteArc's capabilities
| Area | Methods |
|---|---|
| Modalities | scRNA-seq, scATAC-seq, CITE-seq, matched multi-omics |
| Core workflow | Quality control, feature selection, normalization, PCA and LSI, KNN graph, UMAP, densMAP, t-SNE (optional tsne extra), Leiden, Paris, marker search |
| Integration | Harmony, partial PCA, shared and weighted nearest neighbours, integration metrics |
| Mapping | Symphony-style reference mapping, label transfer, projection diagnostics |
| Trajectory | Population Balance Analysis pseudotime, expression dynamics and modules, multi-sink fate probabilities |
| Also included | Cell-cycle scoring, gene-set activity, graph-diffusion imputation, doublet scores, HTO demultiplexing, pseudobulk export |
Support
CyteArc is open source software released under the BSD 3-Clause License and maintained by Nygen.
Metadata
Release files for cytearc 1.0.0rc1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| cytearc-1.0.0rc1.tar.gz | 2.0 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| cytearc-1.0.0rc1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 3.7 MB
Release files / cytearc-1.0.0rc1.tar.gz
| Download URL | cytearc-1.0.0rc1.tar.gz |
|---|---|
| Size | 2.0 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
54f46d3dac43b969592ff570227bc2905ee2a67f88be8f43fef1f54009d95ff5
|
|
BLAKE2b-256 checksum How to use checksums |
539bb4e7b2255146decb0fceb6ebdccddbe40fe222f7560ec1ce45282ac58c56
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.
Transparency logRelease files / cytearc-1.0.0rc1-py3-none-any.whl
| Download URL | cytearc-1.0.0rc1-py3-none-any.whl |
|---|---|
| Size | 1.7 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
12806f981acb74e576cfa511418f2f46a57bbe6d59ca1eb83decffd080608289
|
|
BLAKE2b-256 checksum How to use checksums |
844524b8faa199b654eb8974871444b9d04a10a3f5014013f2bfc06f8fb87b17
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 8, 2026.
Transparency log