Integration with PyCytoData
As a package providing a pipeline for users, we would love to integrate with other tools! In fact, the more packages that join us in development efforts, the eaiser it will be for users in the field. Therefore, we introduce two modes of integration for the community! Explore how you can contribute to our vision here!
Note
The tiers listed here are not official endorsements or certifications. Rather, we are using the nomenclature to determine what we can support and to provide a concise idea of what to expect for users.
PyCytoData Alliance
This is the base tier of PyCytoData integration. Namely, the workflow
is compatible with the PyCytoData
object. This can be achieved in
one of the following ways:
The output is a
PyCytoData
object.The output can be casted into a
PyCytoData
object (e.g. using ato_pycytodata
method).The output can become an attribute in a
PyCytoData
while preserving the functionality of both.
These requirements are frankly quite easy to meet as PyCytoData
object is
an intutive and flexible interface. The first two criteria are mainly for
data packages, such as Cytomulate, which generate CyTOF datasets. The last
is more or less targted towards other downstream packages.
For example, if you have a package that perform trajectory inference and your method
returns a Trajectory
object, it may be possible to store it in the PyCytoData
object and make use of its functionalities.
PyCytoData Alliance Plus
This is the higher tier of PyCytoData integration. Any packages or methods
that belong in this tier automatically qualifies for the PyCytoData Alliance
tier. Here, the requirement is as follows:
PyCytoData provides a built-in wrapper for a given method (e.g. CytofDR).
In essence, this means that PyCytoData supports an additional workflow natively.
This of course requires the coordination with our team (or at least through a pull
request). As usual, we would love to incorporate different packages into PyCytoData
so that users can have as complete of a workflow as possible. If your package provides
a type of analyses that is currently missing from us, then we are particularly
interested in prioritizing the support for this!
Note
The PyCytoData Alliance Plus does not require porting an entire package to PyCytoData. In fact, it doesn’t even need to support all the customizations. All that is necessary is a wrapper to access the main functionalities of a tool. For more advanced usage, users can fall back to the PyCytoData Alliance mode and work with the original packages instead.