CellSight is a derivative work. Most of what makes it useful was written by other people, and this page records who, and what you have to preserve if you redistribute it.
Upstream project
CellSight is derived from ShinyCell2, developed in the Ouyang lab and distributed under GPL-3.0. Its original authors are:
- John F. Ouyang
- Beijun Chen
Their authorship is still visible throughout the source: most
functions in the reference index carry an
@author John F. Ouyang tag, because they are still
substantially his code. CellSight adds modifications, extensions,
refactors and documentation on top of that foundation — it does not
replace it.
CellSight contributors
Maintained by the OpenOmics group:
- Ryan Routsong (maintainer) — ryan.routsong@nih.gov
- Skyler Kuhn
- Brittney Dulek
- Neelam Redekar
The generated authors page lists the
same set with their formal roles as recorded in
DESCRIPTION.
What CellSight changed
Relative to upstream, the substantive differences are:
-
A templated frontend. The hand-written
wr*code writers were replaced by jinjar templates underinst/templates, with the generated output run through styler and linted as rendered in CI. Seevignette("templates"). - Broader spatial support, including multi-slide objects with a slide selector.
- A DEG page driven by precomputed differential-expression tables.
-
Container tooling under
tools/docker/CellSight/, with CLI wrappers for building apps and for ingesting raw 10x Visium HD output. Seevignette("docker").
NEWS.md records this per release; NOTICE
records the derivative-work claim itself.
Licensing
CellSight is licensed under the GNU General Public License v3.0, the same licence as ShinyCell2. The full text ships with the package.
GPL-3.0 is a copyleft licence, so if you redistribute CellSight — modified or not — you need to:
-
Keep the full licence text with the source
distribution (
LICENSE). -
Preserve the attribution and derivative-work notice
(
NOTICE). This is whyNOTICEis deliberately not in.Rbuildignore: it must travel with the built tarball, not just live in the git repository. - Distribute your modifications under GPL-3.0 as well.
This applies to your fork of CellSight, not to apps you generate with it: the data and figures in a CellSight app are yours.
CellSight is distributed without any warranty, without even the implied warranty of merchantability or fitness for a particular purpose. See the licence for the full disclaimer.
Citing
Cite the upstream method alongside CellSight — the visualisation approach and most of the implementation are ShinyCell2’s work. For CellSight’s own metadata:
citation("cellsight")Third-party components
Beyond CellSight’s R dependencies, two components are worth naming because they carry their own terms:
-
bwtoolandlibbeato(CRG Barcelona) — command-line binaries required at runtime for ATAC track plots. Not installed byinstall.packages(); seevignette("modalities"). -
rjinja-syntax, the bundled VS Code syntax extension for*.R.jinjafiles atinst/extdata/vscode-rjinja/. Optional, and only useful to contributors.
Generated apps also depend on the packages listed under
Config/Needs/viz in DESCRIPTION, each under
its own licence — see vignette("deployment").
Reporting problems
Bugs and feature requests: https://github.com/OpenOmics/CellSight/issues.
If the issue looks like it comes from the shared visualisation code rather than from CellSight’s additions, it may be worth checking ShinyCell2’s issues too.
