cellxgene

An interactive explorer for single-cell transcriptomics data

https://github.com/chanzuckerberg/cellxgene

Science Score: 46.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: zenodo.org
  • Committers with academic emails
    2 of 48 committers (4.2%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (12.9%) to scientific vocabulary

Keywords

dataviz scientific scrna-seq transcriptomics visualization

Keywords from Contributors

bioinformatics imaging genomics sequences scverse anndata scanpy interactive single-cell clade
Last synced: 6 months ago · JSON representation

Repository

An interactive explorer for single-cell transcriptomics data

Basic Info
Statistics
  • Stars: 710
  • Watchers: 38
  • Forks: 140
  • Open Issues: 132
  • Releases: 47
Topics
dataviz scientific scrna-seq transcriptomics visualization
Created over 8 years ago · Last pushed 6 months ago
Metadata Files
Readme Contributing License

README.md

an interactive explorer for single-cell transcriptomics data

DOI PyPI PyPI - Downloads GitHub last commit Push Tests Compatibility Tests Code Coverage

CZ CELLxGENE Annotate (pronounced "cell-by-gene") is an interactive data explorer for single-cell datasets, such as those coming from the Human Cell Atlas. Leveraging modern web development techniques to enable fast visualizations of at least 1 million cells, we hope to enable biologists and computational researchers to explore their data.

Whether you need to visualize one thousand cells or one million, CELLxGENE Annotate helps you gain insight into your single-cell data.

Getting started

The comprehensive guide to CZ CELLxGENE Annotate

The CZ CELLxGENE Annotate documentation is your one-stop-shop for information about CELLxGENE Annotate! You may be particularly interested in:

Quick start

To install CELLxGENE Annotate you need Python 3.10+. We recommend installing Annotate into a conda or virtual environment.

Install the package.

bash pip install cellxgene

Launch Annotate with an example anndata file

bash cellxgene launch https://cellxgene-example-data.czi.technology/pbmc3k.h5ad

To explore more datasets already formatted for Annotate, check out the Demo data or see Preparing your data to learn more about formatting your own data for CELLxGENE Annotate.

Supported browsers

CELLxGENE Annotate currently supports the following browsers:

  • Google Chrome 61+
  • Edge 15+
  • Firefox 60+

Please file an issue if you would like us to add support for an unsupported browser.

Finding help

We'd love to hear from you! For questions, suggestions, or accolades, join the #cellxgene-users channel on the CZI Science Community Slack and say "hi!".

For any errors, report bugs on Github.

Developing with CZ CELLxGENE Annotate

Contributing

We warmly welcome contributions from the community! Please see our contributing guide and don't hesitate to open an issue or send a pull request to improve CELLxGENE Annotate. Please see the dev_docs for pull request suggestions, unit test details, local documentation preview, and other development specifics.

This project adheres to the Contributor Covenant code of conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to opensource@chanzuckerberg.com.

Reuse

This project was started with the sole goal of empowering the scientific community to explore and understand their data. As such, we encourage other scientific tool builders in academia or industry to adopt the patterns, tools, and code from this project. All code is freely available for reuse under the MIT license.

Before extending CELLxGENE Annotate, we encourage you to reach out to us with ideas or questions. It might be possible that an extension could be directly contributed, which would make it available for a wider audience, or that it's on our roadmap and under active development.

See the CELLxGENE extensions section of our documentation for examples of community use and CELLxGENE extensions.

Trademarks

CZ CELLXGENE, CZ CELLXGENE DISCOVER, and CZ CELLXGENE ANNOTATE are trademarks of the Chan Zuckerberg Initiative. All rights reserved.

Use, reuse, modification, and re-distribution of the source code in this repository is subject to the terms of the applicable open source license. However, that license does not grant permission to use the trademarks without separate, express permission from the Chan Zuckerberg Initiative.

Security

If you believe you have found a security issue, we would appreciate notification. Please send email to security@chanzuckerberg.com.

Inspiration

We've been heavily inspired by several other related single-cell visualization projects, including the UCSC Cell Browser, Cytoscape, Xena, ASAP, GenePattern, and many others. We hope to explore collaborations where useful as this community works together on improving interactive visualization for single-cell data.

We were inspired by Mike Bostock and the crossfilter team for the design of our filtering implementation.

We have been working closely with the scanpy team to integrate with their awesome analysis tools. Special thanks to Alex Wolf, Fabian Theis, and the rest of the team for their help during development and for providing an example dataset.

We are eager to explore integrations with other computational backends such as Seurat or Bioconductor

Owner

  • Name: Chan Zuckerberg Initiative
  • Login: chanzuckerberg
  • Kind: organization
  • Email: opensource@chanzuckerberg.com
  • Location: United States of America

Finding new ways to leverage technology, community-driven solutions, and collaboration to accelerate progress in science and education.

GitHub Events

Total
  • Issues event: 15
  • Watch event: 75
  • Delete event: 8
  • Issue comment event: 29
  • Push event: 1
  • Pull request review event: 2
  • Pull request event: 21
  • Fork event: 22
  • Create event: 10
Last Year
  • Issues event: 15
  • Watch event: 75
  • Delete event: 8
  • Issue comment event: 29
  • Push event: 1
  • Pull request review event: 2
  • Pull request event: 21
  • Fork event: 22
  • Create event: 10

Committers

Last synced: 6 months ago

All Time
  • Total Commits: 1,489
  • Total Committers: 48
  • Avg Commits per committer: 31.021
  • Development Distribution Score (DDS): 0.717
Past Year
  • Commits: 7
  • Committers: 3
  • Avg Commits per committer: 2.333
  • Development Distribution Score (DDS): 0.429
Top Committers
Name Email Commits
Colin Megill c****l@g****m 421
Bruce Martin b****e@c****m 335
Charlotte Weaver c****r@g****m 204
Severiano Badajoz s****z@c****m 118
bmccandless b****s@c****m 86
Matt Weiden 5****n 58
maniarathi m****i@g****m 42
Sidney Bell s****l@g****m 40
Madison Dunitz m****z@c****m 27
Timmy Huang t****n 20
Justin Kiggins j****s@g****m 14
Andrew Tolopko a****i 13
dependabot[bot] 4****] 13
Marcus Kinsella m****l 12
Jeremy Freeman t****b@g****m 9
Ben MR b****s@c****m 8
fionagriffin 4****n 8
atarashansky a****y@c****m 6
Emanuele Bezzi e****i@c****m 5
maniarathi a****i@c****m 4
Ronen k****r 4
ashin-czi 1****i 4
Mim Hastie m****m@c****m 3
Ambrose J Carr a****r 3
Leslie h****g@g****m 2
Isaiah Norton i****n 2
Prete m****e@s****k 2
Rohan Agarwal 4****a 2
Trent Smith 1****7 2
Snyk bot s****t@s****o 2
and 18 more...
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 115
  • Total pull requests: 146
  • Average time to close issues: 6 months
  • Average time to close pull requests: about 1 month
  • Total issue authors: 82
  • Total pull request authors: 27
  • Average comments per issue: 2.23
  • Average comments per pull request: 2.03
  • Merged pull requests: 42
  • Bot issues: 1
  • Bot pull requests: 66
Past Year
  • Issues: 17
  • Pull requests: 49
  • Average time to close issues: 6 days
  • Average time to close pull requests: 6 days
  • Issue authors: 17
  • Pull request authors: 8
  • Average comments per issue: 0.18
  • Average comments per pull request: 1.22
  • Merged pull requests: 10
  • Bot issues: 1
  • Bot pull requests: 23
Top Authors
Issue Authors
  • MaximilianLombardo (13)
  • atolopko-czi (10)
  • seve (5)
  • colinmegill (3)
  • lijinbio (3)
  • bkmartinjr (2)
  • dsadgat (2)
  • neuromusic (2)
  • slinnarsson (2)
  • royfrancis (1)
  • aopisco (1)
  • ambrosejcarr (1)
  • dependabot[bot] (1)
  • ivirshup (1)
  • Pointillomic (1)
Pull Request Authors
  • dependabot[bot] (66)
  • atolopko-czi (14)
  • kaloster (12)
  • atarashansky (8)
  • wontonst (5)
  • tihuan (4)
  • ebezzi (4)
  • seve (4)
  • Neah-Ko (2)
  • moritzschaefer (2)
  • NetoRutes (2)
  • ashin-czi (2)
  • roaga (2)
  • smoe (2)
  • neuromusic (2)
Top Labels
Issue Labels
bug (29) question (22) user request (19) frontend (6) tech debt (4) epic (4) P3 (3) backend (3) enhancement (2) on-call (2) P1 (2) cleanup (2) P4 (2) injected (1) security (1) P2 (1) conversation (1) docs (1) tech (1) dependencies (1) javascript (1)
Pull Request Labels
dependencies (66) stale (59) autoclosed (58) javascript (39) python (17) question (1)

Packages

  • Total packages: 2
  • Total downloads:
    • pypi 954 last-month
  • Total docker downloads: 559
  • Total dependent packages: 1
    (may contain duplicates)
  • Total dependent repositories: 6
    (may contain duplicates)
  • Total versions: 45
  • Total maintainers: 5
pypi.org: cellxgene

Web application for exploration of large scale scRNA-seq datasets

  • Versions: 42
  • Dependent Packages: 1
  • Dependent Repositories: 6
  • Downloads: 954 Last month
  • Docker Downloads: 559
Rankings
Docker downloads count: 2.3%
Stargazers count: 2.7%
Forks count: 4.5%
Dependent packages count: 4.8%
Average: 4.8%
Dependent repos count: 6.0%
Downloads: 8.4%
Last synced: 6 months ago
proxy.golang.org: github.com/chanzuckerberg/cellxgene
  • Versions: 3
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 6.5%
Average: 6.7%
Dependent repos count: 7.0%
Last synced: 6 months ago

Dependencies

.github/workflows/codeql-analysis.yml actions
  • actions/checkout v2 composite
  • github/codeql-action/analyze v1 composite
  • github/codeql-action/autobuild v1 composite
  • github/codeql-action/init v1 composite
.github/workflows/compatibility_tests.yml actions
  • actions/cache v1 composite
  • actions/checkout v2 composite
  • actions/setup-python v4 composite
.github/workflows/lint-pr-commit-message.yml actions
  • amannn/action-semantic-pull-request v3.4.1 composite
.github/workflows/push_tests.yml actions
  • actions/cache v1 composite
  • actions/checkout v2 composite
  • actions/setup-python v4 composite
  • gabrielfalcao/pyenv-action v9 composite
Dockerfile docker
  • ubuntu bionic build
client/package-lock.json npm
  • 1229 dependencies
client/package.json npm
  • @babel/core ^7.13.16 development
  • @babel/plugin-proposal-class-properties ^7.10.4 development
  • @babel/plugin-proposal-decorators ^7.13.15 development
  • @babel/plugin-proposal-export-namespace-from ^7.10.4 development
  • @babel/plugin-proposal-function-bind ^7.10.5 development
  • @babel/plugin-proposal-nullish-coalescing-operator ^7.10.4 development
  • @babel/plugin-proposal-optional-chaining ^7.10.4 development
  • @babel/plugin-transform-react-constant-elements ^7.13.13 development
  • @babel/plugin-transform-runtime ^7.13.15 development
  • @babel/preset-env ^7.13.15 development
  • @babel/preset-react ^7.13.13 development
  • @babel/register ^7.13.16 development
  • @babel/runtime ^7.13.16 development
  • @blueprintjs/eslint-plugin ^0.3.0 development
  • @sentry/webpack-plugin ^1.15.0 development
  • babel-jest ^26.1.0 development
  • babel-loader ^8.1.0 development
  • babel-preset-modern-browsers ^15.0.2 development
  • chalk ^4.1.0 development
  • cheerio ^1.0.0-rc.6 development
  • clean-css ^5.1.2 development
  • clean-webpack-plugin ^4.0.0-alpha.0 development
  • codecov ^3.7.1 development
  • css-loader ^5.2.4 development
  • css-minimizer-webpack-plugin ^4.0.0 development
  • eslint ^7.24.0 development
  • eslint-config-airbnb ^18.2.0 development
  • eslint-config-prettier ^8.2.0 development
  • eslint-plugin-compat ^3.8.0 development
  • eslint-plugin-eslint-comments ^3.2.0 development
  • eslint-plugin-filenames ^1.3.2 development
  • eslint-plugin-import ^2.24.2 development
  • eslint-plugin-jest ^24.3.5 development
  • eslint-plugin-jsx-a11y ^6.3.1 development
  • eslint-plugin-react ^7.23.2 development
  • eslint-plugin-react-hooks ^4.0.8 development
  • expect-puppeteer ^5.0.0 development
  • express ^4.17.1 development
  • file-loader ^6.0.0 development
  • html-webpack-plugin ^5.3.1 development
  • husky ^7.0.2 development
  • jest ^27.0.6 development
  • jest-circus ^27.0.6 development
  • jest-environment-puppeteer ^5.0.1 development
  • jest-fetch-mock ^3.0.3 development
  • jest-puppeteer ^5.0.1 development
  • json-loader ^0.5.7 development
  • lint-staged ^10.2.11 development
  • lodash ^4.17.21 development
  • lodash.every ^4.6.0 development
  • lodash.filter ^4.6.0 development
  • lodash.isnumber ^3.0.3 development
  • lodash.map ^4.6.0 development
  • lodash.zip ^4.2.0 development
  • mini-css-extract-plugin ^1.5.0 development
  • obsolete-webpack-plugin ^0.5.6 development
  • prettier ^2.0.5 development
  • puppeteer ^8.0.0 development
  • rimraf ^3.0.2 development
  • serve-favicon ^2.5.0 development
  • terser-webpack-plugin ^5.1.1 development
  • webpack ^5.34.0 development
  • webpack-cli ^4.6.0 development
  • webpack-dev-middleware ^4.1.0 development
  • webpack-merge ^5.0.9 development
  • @babel/eslint-parser ^7.15.0
  • @blueprintjs/core ^3.44.0
  • @blueprintjs/icons ^3.19.0
  • @blueprintjs/popover2 ^0.11.2
  • @blueprintjs/select ^3.16.0
  • abort-controller ^3.0.0
  • core-js ^3.16.3
  • d3 ^4.10.0
  • d3-scale-chromatic ^1.5.0
  • flatbuffers ^1.11.0
  • fuzzysort ^1.1.4
  • gl-mat4 ^1.2.0
  • gl-matrix ^3.3.0
  • gl-vec3 ^1.1.3
  • is-number ^7.0.0
  • lodash.clonedeep ^4.5.0
  • lodash.difference ^4.5.0
  • lodash.foreach ^4.5.0
  • lodash.pull ^4.1.0
  • lodash.sortby ^4.7.0
  • lodash.uniq ^4.5.0
  • memoize-one ^5.1.1
  • pako ^2.0.3
  • react ^17.0.2
  • react-async ^10.0.1
  • react-dom ^17.0.2
  • react-flip-toolkit ^7.0.12
  • react-helmet ^6.1.0
  • react-icons ^4.2.0
  • react-redux ^7.2.0
  • redux ^4.0.5
  • redux-thunk ^2.3.0
  • regenerator-runtime ^0.13.7
  • regl ^2.1.0
  • sha1 ^1.1.1
  • tinyqueue ^2.0.3
  • whatwg-fetch ^3.2.0
.github/workflows/close-stale-prs.yml actions
  • actions/stale v5 composite
pyproject.toml pypi
requirements.txt pypi
server/requirements-annotate.txt pypi
  • mlflow ==2.16.0
  • scanpy *
server/requirements-dev.txt pypi
  • aiohttp >=3.9.1 development
  • black * development
  • bumpversion >=0.5 development
  • codecov >=2.0.15 development
  • parameterized >=0.7.0 development
  • pytest >=3.6.3 development
  • python-jose >=3.2.0 development
  • twine >=1.12.1 development
server/requirements-prepare.txt pypi
  • louvain >=0.6
  • python-igraph >=0.8
  • scanpy *
  • umap-learn <0.5.0
server/requirements.txt pypi
  • Flask >=3.0.0
  • Flask-Compress >=1.4.0
  • Flask-Cors >=3.0.9
  • Flask-RESTful >=0.3.6
  • PyYAML >=5.4
  • anndata >=0.8.0
  • boto3 >=1.12.18
  • click >=7.1.2
  • flask-server-timing >=0.1.2
  • flask-talisman >=0.7.0
  • flatbuffers ==2.0.7
  • flatten-dict >=0.2.0
  • fsspec >0.8.0
  • gunicorn >=20.0.4
  • h5py >=3.0.0
  • numba >=0.60.0
  • numpy ==2.0.1
  • packaging >=20.0
  • pandas >=2.2.2
  • requests >=2.22.0
  • s3fs ==0.4.2
  • scipy >=1.4
  • setuptools *
setup.py pypi