Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

InSTAnT #150

Open
wants to merge 3 commits into
base: main
Choose a base branch
from
Open

InSTAnT #150

wants to merge 3 commits into from

Conversation

bhavaygg
Copy link

@bhavaygg bhavaygg commented Jan 24, 2024

Mandatory
Name of the tool: InSTAnT

Short description: InSTAnT is a toolkit to identify gene pairs which are d-colocalized from single molecule measurement data e.g. MERFISH or SeqFISH. A gene pair is d-colocalized when their transcripts are within distance d across many cells.

How does the package use scverse data structures (please describe in a few sentences): The package offers support for anndata input/output.

  • The code is publicly available under an OSI-approved license
  • The package provides versioned releases
  • The package can be installed from a standard registry (e.g. PyPI, conda-forge, bioconda)
  • The package uses automated software tests and runs them via continuous integration (CI)
  • The package provides API documentation via a website or README
  • The package uses scverse datastructures where appropriate (i.e. AnnData, MuData or SpatialData and their modality-specific extensions)
  • I am an author or maintainer of the tool and agree on listing the package on the scverse website

@grst
Copy link
Contributor

grst commented Feb 1, 2024

Hi @bhavaygg,

thanks for submitting the package. I have a couple of comments:

The package can be installed from a standard registry (e.g. PyPI, conda-forge, bioconda)

  • Minor point: The PyPI badge in your repo points to instant rather than sc-instant
  • It seems that in your setup.py/requirements.txt you pin the exact package versions. Can you please change this to minimum requirements unless you have very good reasons to pin specific packages? If several packages do this, it will be impossible to install them into the same environment.

The package uses automated software tests and runs them via continuous integration (CI)

I can't find automated tests, nor continuous integration setup in your repository. At the very least, you should have end-to-end tests that ensure that the main functions of your package can be successfully executed. Better would be to additionally have unit tests that check the correctness of the results. You can find more information about tests in the pyopensci guidebook and find an example in our cookiecutter template.

The package provides API documentation via a website or README

By API documentation, we mean a listing of all functions/classes/class methods that your package provides, including their arguments, e.g. scirpy API docs. If you have only a few of them, it's fine to do it in the README, otherwise, I strongly recommend checking out tools such as sphinx autodoc.

You README shows some of the functions available, but there are some additional Classes exported from your namespace, e.g. ConditionalGlobalColocalization that are not mentioned there.

The package uses scverse datastructures where appropriate (i.e. AnnData, MuData or SpatialData and their modality-specific extensions)

You should consider supporting SpatialData which is the new scverse data structure for spatial datasets which readily supports subcellular resolution. @LucaMarconato can tell you more about it if you have any questions. AnnData for spatial datasets is a legacy format that has no future in scverse.
More generally, it would be great to always support in-memory objects as input rather than pointing to a file, to avoid unnecessary serialization and re-loading of the object.

Finally, we are starting a partnership with pyopensci - If you want you can also get a more comprehensive package review through them. This is optional for now, but will eventually become the standard for adding scverse ecosystem packages.

@LucaMarconato
Copy link
Member

@bhavaygg great work and thanks for contributing to the scverse ecosystem! As Gregor said feel free to reach out to me here in GitHub or via the scverse Zulip chat for any question. https://scverse.zulipchat.com/#narrow/stream/315824-spatial

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants