--- id: somacore version: "2.0.0" license: unclear license_treatment: permissive maintenance: active --- # somacore — Python-language API specification and base utilities for implementation of the SOMA system. License: permissive · Maintenance: active · Downloads: 89.7K/mo ## What it is and what it does somacore is the Python reference implementation of the abstract SOMA specification, a standardized format for storing and retrieving single-cell data. It provides base interfaces, shared types, and cross-implementation utilities rather than a complete storage backend. The package is designed primarily for SOMA implementors and libraries that handle SOMA data, not for end users working directly with single-cell datasets. The package depends on established scientific Python libraries (numpy, pandas, scipy, anndata, pyarrow) and provides the foundational API contracts that concrete SOMA implementations like tiledbsoma build upon. If you are working with SOMA data, the documentation recommends installing a SOMA implementation instead of this core package directly. Use it for: - Building a SOMA backend implementation that needs to conform to the standardized SOMA interface specification. - Developing libraries that read or write SOMA-formatted single-cell data and need shared type definitions. - Contributing to or extending the SOMA ecosystem with new storage or retrieval mechanisms. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Provides the Python reference implementation of the SOMA specification—a set of base interfaces, types, and utilities for working with standardized single-cell data storage and retrieval across different backend implementations. Yes, if you are implementing a SOMA backend or building libraries that work with SOMA data. No, if you are an end user working with single-cell data—install a SOMA implementation like tiledbsoma instead. The package is actively maintained, has no known vulnerabilities, and carries a permissive license, but is explicitly not intended for direct end-user use. ## Install pip install somacore uv add somacore poetry add somacore ## Installing somacore Before you install: Low install friction with a pure-Python wheel and nine well-established dependencies (numpy, pandas, scipy, anndata, pyarrow, and others). Repository is active with recent commits and no security vulnerabilities reported. License in practice: MIT license (permissive) places no restrictions on use, modification, or distribution in commercial or private projects. Quickstart: pip install somacore import somacore # Access SOMA base interfaces and types for implementing or working with SOMA data Requires Python 3.9 or later. Verify before relying: - Whether this package is intended for direct end-user installation or primarily as a transitive dependency of SOMA implementations like tiledbsoma. - Specific use cases beyond implementing SOMA backends or building SOMA-aware libraries. ## Package facts - License: not declared (permissive) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 89.7K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags SOMA specification Python, single-cell data API, SOMA interfaces base, standardized cell data format, SOMA implementation utilities, single-cell-data, specification-reference [View on SkillFed](https://skillfed.io/packages/somacore) · [View on PyPI](https://pypi.org/project/somacore/)