{"id":34070104,"url":"https://github.com/single-cell-data/tiledb-soma","last_synced_at":"2026-03-05T17:42:53.455Z","repository":{"id":36977850,"uuid":"453154263","full_name":"single-cell-data/TileDB-SOMA","owner":"single-cell-data","description":"Python and R SOMA APIs using TileDB’s cloud-native format. Ideal for single-cell data at any scale.","archived":false,"fork":false,"pushed_at":"2025-12-07T20:34:45.000Z","size":433597,"stargazers_count":117,"open_issues_count":100,"forks_count":30,"subscribers_count":9,"default_branch":"main","last_synced_at":"2025-12-08T02:03:13.036Z","etag":null,"topics":["single-cell","single-cell-genomics","tiledb","tiledb-api","tiledb-soma"],"latest_commit_sha":null,"homepage":"https://tiledbsoma.readthedocs.io","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/single-cell-data.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2022-01-28T17:18:33.000Z","updated_at":"2025-12-08T00:46:25.000Z","dependencies_parsed_at":"2024-04-14T21:30:10.233Z","dependency_job_id":"36c7f75d-2580-43d1-b4c8-fc711eff97df","html_url":"https://github.com/single-cell-data/TileDB-SOMA","commit_stats":{"total_commits":936,"total_committers":23,"mean_commits":40.69565217391305,"dds":"0.40064102564102566","last_synced_commit":"9c757180b270c3c746e73226f8915275133c7198"},"previous_names":["single-cell-data/tiledb-singlecell"],"tags_count":168,"template":false,"template_full_name":null,"purl":"pkg:github/single-cell-data/TileDB-SOMA","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/single-cell-data%2FTileDB-SOMA","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/single-cell-data%2FTileDB-SOMA/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/single-cell-data%2FTileDB-SOMA/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/single-cell-data%2FTileDB-SOMA/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/single-cell-data","download_url":"https://codeload.github.com/single-cell-data/TileDB-SOMA/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/single-cell-data%2FTileDB-SOMA/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":27720815,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-12-14T02:00:11.348Z","response_time":56,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["single-cell","single-cell-genomics","tiledb","tiledb-api","tiledb-soma"],"created_at":"2025-12-14T07:02:03.657Z","updated_at":"2025-12-14T07:02:30.400Z","avatar_url":"https://github.com/single-cell-data.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ca href=\"https://tiledb.com\"\u003e\u003cimg src=\"https://github.com/TileDB-Inc/TileDB/raw/main/doc/source/_static/tiledb-logo_color_no_margin_@4x.png\" alt=\"TileDB logo\" width=\"400\"\u003e\u003c/a\u003e\n\n[![TileDB-SOMA CI](https://github.com/single-cell-data/TileDB-SOMA/actions/workflows/ci-full.yml/badge.svg)](https://github.com/single-cell-data/TileDB-SOMA/actions/workflows/ci-full.yml)\n[![PyPI version](https://badge.fury.io/py/tiledbsoma.svg)](https://badge.fury.io/py/tiledbsoma)\n[![tiledbsoma status badge](https://tiledb-inc.r-universe.dev/badges/tiledbsoma)](https://tiledb-inc.r-universe.dev)\n[![codecov](https://codecov.io/github/single-cell-data/TileDB-SOMA/branch/main/graph/badge.svg)](https://codecov.io/github/single-cell-data/TileDB-SOMA)\n\n# TileDB-SOMA\n\n[SOMA](https://github.com/single-cell-data/SOMA/tree/main) – for “Stack Of Matrices, Annotated” – is a flexible, extensible, and open-source API enabling access to data in a variety of formats. The driving use case of SOMA is for single-cell data in the form of annotated matrices where observations are frequently cells and features are genes, proteins, or genomic regions.\n\nThe TileDB-SOMA package is a C++ library with APIs in Python and R, using [TileDB\nEmbedded](https://github.com/TileDB-Inc/TileDB) to implement the\n[SOMA specification](https://github.com/single-cell-data/SOMA/blob/main/abstract_specification.md).\n\nGet started on using TileDB-SOMA:\n\n- [Quick start](#quick-start).\n- Python [documentation](https://tiledbsoma.readthedocs.io/en/latest/python-api.html).\n- R [documentation](https://single-cell-data.github.io/TileDB-SOMA/).\n\n## What Can TileDB-SOMA Do?\n\nIntended to be used for single-cell data, TileDB-SOMA provides Python and R APIs to allow for storage and data access patterns at scale and for larger-than-memory operations:\n\n- Create and write large volumes of data.\n- Open and read data at low latency, locally and from the cloud.\n- Query and access interconnected arrays efficiently and at low latency.\n\nTileDB-SOMA provides interoperability with existing single-cell toolkits:\n\n- Load and create [AnnData](https://anndata.readthedocs.io/en/latest/) objects.\n- Load and create [Seurat](https://satijalab.org/seurat/) objects.\n\nTileDB-SOMA provides interoperability with existing Python or R data structures:\n\n- From Python create PyArrow objects, SciPy sparse matrices, NumPy arrays, and pandas data frames.\n- From R create R Arrow objects, sparse matrices (via the [Matrix](https://cran.r-project.org/package=Matrix) package), and standard data frames and (dense) matrices.\n\n## Community\n\n- Please join [TileDB's forum](https://forum.tiledb.com) for discussions and questions about TileDB-SOMA.\n- Please join the [CZI Slack community](https://cziscience.slack.com/join/shared_invite/zt-czl1kp2v-sgGpY4RxO3bPYmFg2XlbZA#/shared-invite/email), with dedicated\n  channel `#cellxgene-census-users`.\n\n## APIs Installation and Quick Start \u003ca id=\"quick-start\"\u003e\u003c/a\u003e\n\n- [Python installation and quick start](https://github.com/single-cell-data/TileDB-SOMA/wiki/Python-quick-start)\n- [R installation and quick start](https://github.com/single-cell-data/TileDB-SOMA/wiki/R-quick-start)\n\n## API Documentation\n\nThe TileDB-SOMA doc-site ([Python](https://tiledbsoma.readthedocs.io/en/latest/python-api.html)|[R](https://single-cell-data.github.io/TileDB-SOMA/)), contains the reference documentation and tutorials.\n\nReference documentation can also be accessed directly from Python `help(tiledsoma)` or R `help(package = \"tiledbsoma\")`.\n\nRelease notes / changelog:\n\n- [R package NEWS.md](https://github.com/single-cell-data/TileDB-SOMA/blob/main/apis/r/NEWS.md)\n- [Python package HISTORY.md](https://github.com/single-cell-data/TileDB-SOMA/blob/main/apis/python/HISTORY.md)\n\n## Main SOMA Objects\n\nThe capabilities of TileDB-SOMA lay on the different read, access, and query patterns that each of the main implementations of SOMA objects provide:\n\n- `DenseNDArray` is a dense, N-dimensional array, with offset (zero-based) integer indexing on each dimension.\n- `SparseNDArray` is the same as `DenseNDArray` but sparse, and supports point indexing (disjoint index access).\n- `DataFrame` is a multi-column table with a user-defined columns names and value types, with support for point indexing.\n- `Collection` is a persistent container of named SOMA objects.\n- `Experiment` is a class that represents a single-cell experiment. It always contains two objects:\n  - `obs`: a `DataFrame` with primary annotations on the observation axis.\n  - `ms`: a `Collection` of measurements, each composed of `X` matrices and axis annotation matrices or data frames (e.g. `var`, `varm`, `obsm`, etc).\n\n## Who Is Using SOMA?\n\n- [CZ CELLxGENE Discover](https://cellxgene.cziscience.com/) to build its [Census](https://github.com/chanzuckerberg/cellxgene-census/), which provides efficient access and querying to a corpus containing nearly 50 million cells, compiled from 700+ datasets.\n\nIf you are interested in listing any projects here please contact us at [soma@chanzuckerberg.com](mailto:soma@chanzuckerberg.com).\n\n## Issues and Contacts\n\n- Any/all questions, comments, and concerns are welcome at the [GitHub new-issue page](https://github.com/single-cell-data/TileDB-SOMA/issues/new/choose) -- or, you can also browse [existing issues](https://github.com/single-cell-data/TileDB-SOMA/issues).\n- If you believe you have found a security issue, in lieu of filing an issue please responsibly disclose it by contacting [security@tiledb.com](mailto:security@tiledb.com).\n\n## Branches\n\nThis branch, `main`, implements the [updated specfication](https://github.com/single-cell-data/SOMA/blob/main/abstract_specification.md). Please also see the `main-old` branch which implements the [original specification](https://github.com/single-cell-data/TileDB-SOMA/blob/main-old/spec/specification.md).\n\n## Developer Information\n\n- [TileDB-SOMA wiki](https://github.com/single-cell-data/TileDB-SOMA/wiki).\n- [Build instructions for developers](libtiledbsoma/README.md).\n\n## Code of Conduct\n\nAll participants in TileDB spaces are expected to adhere to high standards of\nprofessionalism in all interactions. This repository is governed by the\nspecific standards and reporting procedures detailed in depth in the\n[TileDB core repository Code Of Conduct](https://github.com/TileDB-Inc/TileDB/blob/dev/CODE_OF_CONDUCT.md).\n\n\u003c!-- links --\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsingle-cell-data%2Ftiledb-soma","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsingle-cell-data%2Ftiledb-soma","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsingle-cell-data%2Ftiledb-soma/lists"}