<h1 align="left">CyteType</h1>
<p align="left">
<a href="https://github.com/NygenAnalytics/cytetype/actions/workflows/publish.yml">
<img src="https://github.com/NygenAnalytics/cytetype/actions/workflows/publish.yml/badge.svg" alt="CI Status">
</a>
<a href="https://github.com/NygenAnalytics/cytetype/blob/main/LICENSE">
<img src="https://img.shields.io/badge/License-CC%20BY--NC--SA%204.0-lightgrey.svg" alt="License: CC BY-NC-SA 4.0">
</a>
<a href="https://pypi.org/project/cytetype/">
<img src="https://img.shields.io/pypi/v/cytetype.svg" alt="PyPI version">
</a>
<img src="https://img.shields.io/badge/python-≥3.11-blue.svg" alt="Python Version">
</p>
---
CyteType is a Python client for deep characterization of cell clusters from single‑cell RNA‑seq. It prepares your `AnnData` and calls an upstream hosted service to generate rich annotations, ontology terms, and an HTML report.
- Minimal install: `pip install cytetype`
## Quick Start
```python
import anndata
import scanpy as sc
from cytetype import CyteType
# ------ Example Scanpy Pipeline ------
# Skip this step if you already have clusters and marker genes in an AnnData object.
adata = anndata.read_h5ad("path/to/your/data.h5ad")
sc.pp.normalize_total(adata, target_sum=1e4)
sc.pp.log1p(adata)
sc.pp.highly_variable_genes(adata, n_top_genes=1000)
sc.pp.pca(adata)
sc.pp.neighbors(adata)
sc.tl.leiden(adata, key_added="clusters")
sc.tl.rank_genes_groups(adata, groupby="clusters", method="t-test")
# ------ Example Scanpy Pipeline ------
# ------ CyteType ------
annotator = CyteType(adata, group_key="clusters")
adata = annotator.run(
study_context="Brief study description (e.g., Human brain tissue ...)",
)
# View results
print(adata.obs.cytetype_annotation_clusters)
print(adata.obs.cytetype_cellOntologyTerm_clusters)
```
## Documentation
- Configuration (LLMs, auth, advanced): <a href="docs/configuration.md">docs/configuration.md</a>
- Results: <a href="docs/results.md">docs/results.md</a>
- Examples & Colab Notebooks: <a href="docs/examples.md">docs/examples.md</a>
- Troubleshooting: <a href="docs/troubleshooting.md">docs/troubleshooting.md</a>
- Development: <a href="docs/development.md">docs/development.md</a>
- Server Overview (high‑level): <a href="docs/server-overview.md">docs/server-overview.md</a>
- Ollama Integration: <a href="docs/ollama.md">docs/ollama.md</a>
## Example Report
- Live sample: <a href="https://nygen-labs-prod--cytetype-api.modal.run/report/5b4eb3e1-fde7-4609-8be0-2bea015c241d?v=250722" target="_blank">CyteType Report</a>
## License
Licensed under CC BY‑NC‑SA 4.0 — see <a href="LICENSE.md">LICENSE.md</a>.
Raw data
{
"_id": null,
"home_page": null,
"name": "cytetype",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.11",
"maintainer_email": null,
"keywords": "bioinformatics, single-cell, RNA-seq, annotation, cell types",
"author": null,
"author_email": "Parashar Dhapola <parashar@nygen.io>",
"download_url": "https://files.pythonhosted.org/packages/80/b1/2ebb67d154381fec0c55f46f7913b3377cf2376b16593e3502aef9b831cb/cytetype-0.9.1.tar.gz",
"platform": null,
"description": "<h1 align=\"left\">CyteType</h1>\n\n<p align=\"left\">\n <a href=\"https://github.com/NygenAnalytics/cytetype/actions/workflows/publish.yml\">\n <img src=\"https://github.com/NygenAnalytics/cytetype/actions/workflows/publish.yml/badge.svg\" alt=\"CI Status\">\n </a>\n <a href=\"https://github.com/NygenAnalytics/cytetype/blob/main/LICENSE\">\n <img src=\"https://img.shields.io/badge/License-CC%20BY--NC--SA%204.0-lightgrey.svg\" alt=\"License: CC BY-NC-SA 4.0\">\n </a>\n <a href=\"https://pypi.org/project/cytetype/\">\n <img src=\"https://img.shields.io/pypi/v/cytetype.svg\" alt=\"PyPI version\">\n </a>\n <img src=\"https://img.shields.io/badge/python-\u22653.11-blue.svg\" alt=\"Python Version\">\n</p>\n\n---\n\nCyteType is a Python client for deep characterization of cell clusters from single\u2011cell RNA\u2011seq. It prepares your `AnnData` and calls an upstream hosted service to generate rich annotations, ontology terms, and an HTML report.\n\n- Minimal install: `pip install cytetype`\n\n## Quick Start\n\n```python\nimport anndata\nimport scanpy as sc\nfrom cytetype import CyteType\n\n# ------ Example Scanpy Pipeline ------\n# Skip this step if you already have clusters and marker genes in an AnnData object. \nadata = anndata.read_h5ad(\"path/to/your/data.h5ad\")\nsc.pp.normalize_total(adata, target_sum=1e4)\nsc.pp.log1p(adata)\nsc.pp.highly_variable_genes(adata, n_top_genes=1000)\nsc.pp.pca(adata)\nsc.pp.neighbors(adata)\nsc.tl.leiden(adata, key_added=\"clusters\")\nsc.tl.rank_genes_groups(adata, groupby=\"clusters\", method=\"t-test\")\n# ------ Example Scanpy Pipeline ------\n\n# ------ CyteType ------\nannotator = CyteType(adata, group_key=\"clusters\")\nadata = annotator.run(\n study_context=\"Brief study description (e.g., Human brain tissue ...)\",\n)\n\n# View results\nprint(adata.obs.cytetype_annotation_clusters)\nprint(adata.obs.cytetype_cellOntologyTerm_clusters)\n```\n\n## Documentation\n- Configuration (LLMs, auth, advanced): <a href=\"docs/configuration.md\">docs/configuration.md</a>\n- Results: <a href=\"docs/results.md\">docs/results.md</a>\n- Examples & Colab Notebooks: <a href=\"docs/examples.md\">docs/examples.md</a>\n- Troubleshooting: <a href=\"docs/troubleshooting.md\">docs/troubleshooting.md</a>\n- Development: <a href=\"docs/development.md\">docs/development.md</a>\n- Server Overview (high\u2011level): <a href=\"docs/server-overview.md\">docs/server-overview.md</a>\n- Ollama Integration: <a href=\"docs/ollama.md\">docs/ollama.md</a>\n\n## Example Report\n- Live sample: <a href=\"https://nygen-labs-prod--cytetype-api.modal.run/report/5b4eb3e1-fde7-4609-8be0-2bea015c241d?v=250722\" target=\"_blank\">CyteType Report</a>\n\n## License\nLicensed under CC BY\u2011NC\u2011SA 4.0 \u2014 see <a href=\"LICENSE.md\">LICENSE.md</a>.\n",
"bugtrack_url": null,
"license": "CC BY-NC-SA 4.0",
"summary": "Python client for characterization of clusters from single-cell RNA-seq data.",
"version": "0.9.1",
"project_urls": {
"Homepage": "https://github.com/NygenAnalytics/cytetype",
"Issues": "https://github.com/NygenAnalytics/cytetype/issues",
"Repository": "https://github.com/NygenAnalytics/cytetype"
},
"split_keywords": [
"bioinformatics",
" single-cell",
" rna-seq",
" annotation",
" cell types"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "2f7634986007aae8a30248cf07b97b764698f803855bf8b538b9810e91980f8d",
"md5": "943ca4aafe34e36875e0d0589faa97e6",
"sha256": "83fd41089817a3009fc9abb33bed945e402e5e25e753f5dfbac1a4cea6dfc144"
},
"downloads": -1,
"filename": "cytetype-0.9.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "943ca4aafe34e36875e0d0589faa97e6",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.11",
"size": 40425,
"upload_time": "2025-08-25T00:48:28",
"upload_time_iso_8601": "2025-08-25T00:48:28.943690Z",
"url": "https://files.pythonhosted.org/packages/2f/76/34986007aae8a30248cf07b97b764698f803855bf8b538b9810e91980f8d/cytetype-0.9.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "80b12ebb67d154381fec0c55f46f7913b3377cf2376b16593e3502aef9b831cb",
"md5": "c20f377670fa6b4e85926f236085bda3",
"sha256": "5da3019e25ec931af9026bddbb1cd6f3ff7e4057d0477d4088ec89037606d8c7"
},
"downloads": -1,
"filename": "cytetype-0.9.1.tar.gz",
"has_sig": false,
"md5_digest": "c20f377670fa6b4e85926f236085bda3",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.11",
"size": 35840,
"upload_time": "2025-08-25T00:48:30",
"upload_time_iso_8601": "2025-08-25T00:48:30.398870Z",
"url": "https://files.pythonhosted.org/packages/80/b1/2ebb67d154381fec0c55f46f7913b3377cf2376b16593e3502aef9b831cb/cytetype-0.9.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-08-25 00:48:30",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "NygenAnalytics",
"github_project": "cytetype",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "cytetype"
}