diff --git a/.devcontainer/setup.sh b/.devcontainer/setup.sh index b16c2e73..033278f7 100755 --- a/.devcontainer/setup.sh +++ b/.devcontainer/setup.sh @@ -10,4 +10,4 @@ export PS1='\[\e[3;36m\]\w ->\[\e[0m\\] ' nextflow self-update # Update welcome message -echo "Welcome to the nf-core/spatialxe devcontainer!" > /usr/local/etc/vscode-dev-containers/first-run-notice.txt +echo "Welcome to the nf-core/spatialaxe devcontainer!" > /usr/local/etc/vscode-dev-containers/first-run-notice.txt diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index 6264525d..21358536 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -1,23 +1,23 @@ -# `nf-core/spatialxe`: Contributing Guidelines +# `nf-core/spatialaxe`: Contributing Guidelines Hi there! -Many thanks for taking an interest in improving nf-core/spatialxe. +Many thanks for taking an interest in improving nf-core/spatialaxe. -We try to manage the required tasks for nf-core/spatialxe using GitHub issues, you probably came to this page when creating one. +We try to manage the required tasks for nf-core/spatialaxe using GitHub issues, you probably came to this page when creating one. Please use the pre-filled template to save time. However, don't be put off by this template - other more general issues and suggestions are welcome! Contributions to the code are even more welcome ;) > [!NOTE] -> If you need help using or modifying nf-core/spatialxe then the best place to ask is on the nf-core Slack [#spatialxe](https://nfcore.slack.com/channels/spatialxe) channel ([join our Slack here](https://nf-co.re/join/slack)). +> If you need help using or modifying nf-core/spatialaxe then the best place to ask is on the nf-core Slack [#spatialaxe](https://nfcore.slack.com/channels/spatialaxe) channel ([join our Slack here](https://nf-co.re/join/slack)). ## Contribution workflow -If you'd like to write some code for nf-core/spatialxe, the standard workflow is as follows: +If you'd like to write some code for nf-core/spatialaxe, the standard workflow is as follows: -1. Check that there isn't already an issue about your idea in the [nf-core/spatialxe issues](https://github.com/nf-core/spatialxe/issues) to avoid duplicating work. If there isn't one already, please create one so that others know you're working on this -2. [Fork](https://help.github.com/en/github/getting-started-with-github/fork-a-repo) the [nf-core/spatialxe repository](https://github.com/nf-core/spatialxe) to your GitHub account +1. Check that there isn't already an issue about your idea in the [nf-core/spatialaxe issues](https://github.com/nf-core/spatialaxe/issues) to avoid duplicating work. If there isn't one already, please create one so that others know you're working on this +2. [Fork](https://help.github.com/en/github/getting-started-with-github/fork-a-repo) the [nf-core/spatialaxe repository](https://github.com/nf-core/spatialaxe) to your GitHub account 3. Make the necessary changes / additions within your forked repository following [Pipeline conventions](#pipeline-contribution-conventions) 4. Use `nf-core pipelines schema build` and add any new parameters to the pipeline JSON schema (requires [nf-core tools](https://github.com/nf-core/tools) >= 1.10). 5. Submit a Pull Request against the `dev` branch and wait for the code to be reviewed and merged @@ -61,11 +61,11 @@ These tests are run both with the latest available version of `Nextflow` and als ## Getting help -For further information/help, please consult the [nf-core/spatialxe documentation](https://nf-co.re/spatialxe/usage) and don't hesitate to get in touch on the nf-core Slack [#spatialxe](https://nfcore.slack.com/channels/spatialxe) channel ([join our Slack here](https://nf-co.re/join/slack)). +For further information/help, please consult the [nf-core/spatialaxe documentation](https://nf-co.re/spatialaxe/usage) and don't hesitate to get in touch on the nf-core Slack [#spatialaxe](https://nfcore.slack.com/channels/spatialaxe) channel ([join our Slack here](https://nf-co.re/join/slack)). ## Pipeline contribution conventions -To make the `nf-core/spatialxe` code and processing logic more understandable for new contributors and to ensure quality, we semi-standardise the way the code and other contributions are written. +To make the `nf-core/spatialaxe` code and processing logic more understandable for new contributors and to ensure quality, we semi-standardise the way the code and other contributions are written. ### Adding a new step @@ -115,7 +115,7 @@ This repo includes a devcontainer configuration which will create a GitHub Codes To get started: -- Open the repo in [Codespaces](https://github.com/nf-core/spatialxe/codespaces) +- Open the repo in [Codespaces](https://github.com/nf-core/spatialaxe/codespaces) - Tools installed - nf-core - Nextflow diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml index 08eca313..b08b451d 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.yml +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -8,7 +8,7 @@ body: Before you post this issue, please check the documentation: - [nf-core website: troubleshooting](https://nf-co.re/usage/troubleshooting) - - [nf-core/spatialxe pipeline documentation](https://nf-co.re/spatialxe/usage) + - [nf-core/spatialaxe pipeline documentation](https://nf-co.re/spatialaxe/usage) - type: textarea id: description attributes: @@ -46,4 +46,4 @@ body: * Executor _(eg. slurm, local, awsbatch)_ * Container engine: _(e.g. Docker, Singularity, Conda, Podman, Shifter, Charliecloud, or Apptainer)_ * OS _(eg. CentOS Linux, macOS, Linux Mint)_ - * Version of nf-core/spatialxe _(eg. 1.1, 1.5, 1.8.2)_ + * Version of nf-core/spatialaxe _(eg. 1.1, 1.5, 1.8.2)_ diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml index 6192b81d..881458ad 100644 --- a/.github/ISSUE_TEMPLATE/config.yml +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -2,6 +2,6 @@ contact_links: - name: Join nf-core url: https://nf-co.re/join about: Please join the nf-core community here - - name: "Slack #spatialxe channel" - url: https://nfcore.slack.com/channels/spatialxe - about: Discussion about the nf-core/spatialxe pipeline + - name: "Slack #spatialaxe channel" + url: https://nfcore.slack.com/channels/spatialaxe + about: Discussion about the nf-core/spatialaxe pipeline diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml index 9276baef..23ffd0c9 100644 --- a/.github/ISSUE_TEMPLATE/feature_request.yml +++ b/.github/ISSUE_TEMPLATE/feature_request.yml @@ -1,5 +1,5 @@ name: Feature request -description: Suggest an idea for the nf-core/spatialxe pipeline +description: Suggest an idea for the nf-core/spatialaxe pipeline labels: enhancement body: - type: textarea diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index ba3d4540..7d1f9dfd 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -1,22 +1,22 @@ ## PR checklist - [ ] This comment contains a description of changes (with reason). - [ ] If you've fixed a bug or added code that should be tested, add tests! -- [ ] If you've added a new tool - have you followed the pipeline conventions in the [contribution docs](https://github.com/nf-core/spatialxe/tree/main/.github/CONTRIBUTING.md) -- [ ] If necessary, also make a PR on the nf-core/spatialxe _branch_ on the [nf-core/test-datasets](https://github.com/nf-core/test-datasets) repository. +- [ ] If you've added a new tool - have you followed the pipeline conventions in the [contribution docs](https://github.com/nf-core/spatialaxe/tree/main/.github/CONTRIBUTING.md) +- [ ] If necessary, also make a PR on the nf-core/spatialaxe _branch_ on the [nf-core/test-datasets](https://github.com/nf-core/test-datasets) repository. - [ ] Make sure your code lints (`nf-core pipelines lint`). - [ ] Ensure the test suite passes (`nextflow run . -profile test,docker --outdir `). - [ ] Check for unexpected warnings in debug mode (`nextflow run . -profile debug,test,docker --outdir `). diff --git a/.github/workflows/awsfulltest.yml b/.github/workflows/awsfulltest.yml index 2f6822e4..874c73e8 100644 --- a/.github/workflows/awsfulltest.yml +++ b/.github/workflows/awsfulltest.yml @@ -14,7 +14,7 @@ jobs: run-platform: name: Run AWS full tests # run only if the PR is approved by at least 2 reviewers and against the master/main branch or manually triggered - if: github.repository == 'nf-core/spatialxe' && github.event.review.state == 'approved' && (github.event.pull_request.base.ref == 'master' || github.event.pull_request.base.ref == 'main') || github.event_name == 'workflow_dispatch' || github.event_name == 'release' + if: github.repository == 'nf-core/spatialaxe' && github.event.review.state == 'approved' && (github.event.pull_request.base.ref == 'master' || github.event.pull_request.base.ref == 'main') || github.event_name == 'workflow_dispatch' || github.event_name == 'release' runs-on: ubuntu-latest steps: - name: Set revision variable @@ -31,15 +31,15 @@ jobs: access_token: ${{ secrets.TOWER_ACCESS_TOKEN }} compute_env: ${{ vars.TOWER_COMPUTE_ENV }} revision: ${{ steps.revision.outputs.revision }} - workdir: s3://${{ vars.AWS_S3_BUCKET }}/work/spatialxe/work-${{ steps.revision.outputs.revision }} + workdir: s3://${{ vars.AWS_S3_BUCKET }}/work/spatialaxe/work-${{ steps.revision.outputs.revision }} parameters: | { "hook_url": "${{ secrets.MEGATESTS_ALERTS_SLACK_HOOK_URL }}", - "outdir": "s3://${{ vars.AWS_S3_BUCKET }}/spatialxe/results-${{ steps.revision.outputs.revision }}" + "outdir": "s3://${{ vars.AWS_S3_BUCKET }}/spatialaxe/results-${{ steps.revision.outputs.revision }}" } profiles: test_full - - uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4 + - uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: Seqera Platform debug log file path: | diff --git a/.github/workflows/awstest.yml b/.github/workflows/awstest.yml index 566a8d9b..8a8d7f8e 100644 --- a/.github/workflows/awstest.yml +++ b/.github/workflows/awstest.yml @@ -7,7 +7,7 @@ on: jobs: run-platform: name: Run AWS tests - if: github.repository == 'nf-core/spatialxe' + if: github.repository == 'nf-core/spatialaxe' runs-on: ubuntu-latest steps: # Launch workflow using Seqera Platform CLI tool action @@ -18,14 +18,14 @@ jobs: access_token: ${{ secrets.TOWER_ACCESS_TOKEN }} compute_env: ${{ vars.TOWER_COMPUTE_ENV }} revision: ${{ github.sha }} - workdir: s3://${{ vars.AWS_S3_BUCKET }}/work/spatialxe/work-${{ github.sha }} + workdir: s3://${{ vars.AWS_S3_BUCKET }}/work/spatialaxe/work-${{ github.sha }} parameters: | { - "outdir": "s3://${{ vars.AWS_S3_BUCKET }}/spatialxe/results-test-${{ github.sha }}" + "outdir": "s3://${{ vars.AWS_S3_BUCKET }}/spatialaxe/results-test-${{ github.sha }}" } profiles: test - - uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4 + - uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: Seqera Platform debug log file path: | diff --git a/.github/workflows/branch.yml b/.github/workflows/branch.yml index 4f79e0f9..1d9a4442 100644 --- a/.github/workflows/branch.yml +++ b/.github/workflows/branch.yml @@ -13,9 +13,9 @@ jobs: steps: # PRs to the nf-core repo main/master branch are only ok if coming from the nf-core repo `dev` or any `patch` branches - name: Check PRs - if: github.repository == 'nf-core/spatialxe' + if: github.repository == 'nf-core/spatialaxe' run: | - { [[ ${{github.event.pull_request.head.repo.full_name }} == nf-core/spatialxe ]] && [[ $GITHUB_HEAD_REF == "dev" ]]; } || [[ $GITHUB_HEAD_REF == "patch" ]] + { [[ ${{github.event.pull_request.head.repo.full_name }} == nf-core/spatialaxe ]] && [[ $GITHUB_HEAD_REF == "dev" ]]; } || [[ $GITHUB_HEAD_REF == "patch" ]] # If the above check failed, post a comment on the PR explaining the failure # NOTE - this doesn't currently work if the PR is coming from a fork, due to limitations in GitHub actions secrets diff --git a/.github/workflows/download_pipeline.yml b/.github/workflows/download_pipeline.yml index 6d94bcbf..45884ff9 100644 --- a/.github/workflows/download_pipeline.yml +++ b/.github/workflows/download_pipeline.yml @@ -127,7 +127,7 @@ jobs: fi - name: Upload Nextflow logfile for debugging purposes - uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4 + uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5 with: name: nextflow_logfile.txt path: .nextflow.log* diff --git a/.github/workflows/fix_linting.yml b/.github/workflows/fix_linting.yml index 5a1c68cf..5f731f04 100644 --- a/.github/workflows/fix_linting.yml +++ b/.github/workflows/fix_linting.yml @@ -9,11 +9,11 @@ jobs: if: > contains(github.event.comment.html_url, '/pull/') && contains(github.event.comment.body, '@nf-core-bot fix linting') && - github.repository == 'nf-core/spatialxe' + github.repository == 'nf-core/spatialaxe' runs-on: ubuntu-latest steps: # Use the @nf-core-bot token to check out so we can push later - - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5 + - uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5 with: token: ${{ secrets.nf_core_bot_auth_token }} @@ -86,4 +86,4 @@ jobs: issue-number: ${{ github.event.issue.number }} body: | @${{ github.actor }} I tried to fix the linting errors, but it didn't work. Please fix them manually. - See [CI log](https://github.com/nf-core/spatialxe/actions/runs/${{ github.run_id }}) for more details. + See [CI log](https://github.com/nf-core/spatialaxe/actions/runs/${{ github.run_id }}) for more details. diff --git a/.github/workflows/nf-test.yml b/.github/workflows/nf-test.yml index d41e16a3..410a24c3 100644 --- a/.github/workflows/nf-test.yml +++ b/.github/workflows/nf-test.yml @@ -40,7 +40,7 @@ jobs: rm -rf ./* || true rm -rf ./.??* || true ls -la ./ - - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5 + - uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5 with: fetch-depth: 0 @@ -88,7 +88,7 @@ jobs: TOTAL_SHARDS: ${{ needs.nf-test-changes.outputs.total_shards }} steps: - - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5 + - uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5 with: fetch-depth: 0 diff --git a/.github/workflows/template-version-comment.yml b/.github/workflows/template-version-comment.yml index c5988af9..e8560fc7 100644 --- a/.github/workflows/template-version-comment.yml +++ b/.github/workflows/template-version-comment.yml @@ -9,7 +9,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Check out pipeline code - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5 + uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5 with: ref: ${{ github.event.pull_request.head.sha }} diff --git a/.nf-core.yml b/.nf-core.yml index 08a86cf0..e7ec0252 100644 --- a/.nf-core.yml +++ b/.nf-core.yml @@ -5,9 +5,9 @@ lint: - .github/workflows/awstest.yml files_unchanged: - .gitignore - - assets/nf-core-spatialxe_logo_light.png - - docs/images/nf-core-spatialxe_logo_dark.png - - docs/images/nf-core-spatialxe_logo_light.png + - assets/nf-core-spatialaxe_logo_light.png + - docs/images/nf-core-spatialaxe_logo_dark.png + - docs/images/nf-core-spatialaxe_logo_light.png - .github/PULL_REQUEST_TEMPLATE.md nf_core_version: 3.5.2 repository_type: pipeline @@ -16,7 +16,7 @@ template: description: A pipeline for spatialomics Xenium In Situ data. force: false is_nfcore: true - name: spatialxe + name: spatialaxe org: nf-core outdir: . skip_features: diff --git a/CHANGELOG.md b/CHANGELOG.md index 9f0d1258..d7e6cef7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,11 +1,11 @@ -# nf-core/spatialxe: Changelog +# nf-core/spatialaxe: Changelog The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## v1.0.0 - [date] -Initial release of nf-core/spatialxe, created with the [nf-core](https://nf-co.re/) template. +Initial release of nf-core/spatialaxe, created with the [nf-core](https://nf-co.re/) template. ### `Added` diff --git a/CITATIONS.md b/CITATIONS.md index 542e6e38..1457e968 100644 --- a/CITATIONS.md +++ b/CITATIONS.md @@ -1,4 +1,4 @@ -# nf-core/spatialxe: Citations +# nf-core/spatialaxe: Citations ## [nf-core](https://pubmed.ncbi.nlm.nih.gov/32055031/) diff --git a/LICENSE b/LICENSE index df908d32..cf21b558 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) The nf-core/spatialxe team +Copyright (c) The nf-core/spatialaxe team Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/README.md b/README.md index 6eafaeef..3ea92e69 100644 --- a/README.md +++ b/README.md @@ -1,31 +1,31 @@

- - nf-core/spatialxe + + nf-core/spatialaxe

-[![Open in GitHub Codespaces](https://github.com/codespaces/badge.svg)](https://github.com/codespaces/new/nf-core/spatialxe) -[![GitHub Actions CI Status](https://github.com/nf-core/spatialxe/actions/workflows/nf-test.yml/badge.svg)](https://github.com/nf-core/spatialxe/actions/workflows/nf-test.yml) -[![GitHub Actions Linting Status](https://github.com/nf-core/spatialxe/actions/workflows/linting.yml/badge.svg)](https://github.com/nf-core/spatialxe/actions/workflows/linting.yml)[![AWS CI](https://img.shields.io/badge/CI%20tests-full%20size-FF9900?labelColor=000000&logo=Amazon%20AWS)](https://nf-co.re/spatialxe/results)[![Cite with Zenodo](http://img.shields.io/badge/DOI-10.5281/zenodo.XXXXXXX-1073c8?labelColor=000000)](https://doi.org/10.5281/zenodo.XXXXXXX) +[![Open in GitHub Codespaces](https://github.com/codespaces/badge.svg)](https://github.com/codespaces/new/nf-core/spatialaxe) +[![GitHub Actions CI Status](https://github.com/nf-core/spatialaxe/actions/workflows/nf-test.yml/badge.svg)](https://github.com/nf-core/spatialaxe/actions/workflows/nf-test.yml) +[![GitHub Actions Linting Status](https://github.com/nf-core/spatialaxe/actions/workflows/linting.yml/badge.svg)](https://github.com/nf-core/spatialaxe/actions/workflows/linting.yml)[![AWS CI](https://img.shields.io/badge/CI%20tests-full%20size-FF9900?labelColor=000000&logo=Amazon%20AWS)](https://nf-co.re/spatialaxe/results)[![Cite with Zenodo](http://img.shields.io/badge/DOI-10.5281/zenodo.XXXXXXX-1073c8?labelColor=000000)](https://doi.org/10.5281/zenodo.XXXXXXX) [![nf-test](https://img.shields.io/badge/unit_tests-nf--test-337ab7.svg)](https://www.nf-test.com) [![Nextflow](https://img.shields.io/badge/version-%E2%89%A525.04.0-green?style=flat&logo=nextflow&logoColor=white&color=%230DC09D&link=https%3A%2F%2Fnextflow.io)](https://www.nextflow.io/) [![nf-core template version](https://img.shields.io/badge/nf--core_template-3.4.1-green?style=flat&logo=nfcore&logoColor=white&color=%2324B064&link=https%3A%2F%2Fnf-co.re)](https://github.com/nf-core/tools/releases/tag/3.4.1) [![run with docker](https://img.shields.io/badge/run%20with-docker-0db7ed?labelColor=000000&logo=docker)](https://www.docker.com/) [![run with singularity](https://img.shields.io/badge/run%20with-singularity-1d355c.svg?labelColor=000000)](https://sylabs.io/docs/) -[![Launch on Seqera Platform](https://img.shields.io/badge/Launch%20%F0%9F%9A%80-Seqera%20Platform-%234256e7)](https://cloud.seqera.io/launch?pipeline=https://github.com/nf-core/spatialxe) +[![Launch on Seqera Platform](https://img.shields.io/badge/Launch%20%F0%9F%9A%80-Seqera%20Platform-%234256e7)](https://cloud.seqera.io/launch?pipeline=https://github.com/nf-core/spatialaxe) -[![Get help on Slack](http://img.shields.io/badge/slack-nf--core%20%23spatialxe-4A154B?labelColor=000000&logo=slack)](https://nfcore.slack.com/channels/spatialxe)[![Follow on Bluesky](https://img.shields.io/badge/bluesky-%40nf__core-1185fe?labelColor=000000&logo=bluesky)](https://bsky.app/profile/nf-co.re)[![Follow on Mastodon](https://img.shields.io/badge/mastodon-nf__core-6364ff?labelColor=FFFFFF&logo=mastodon)](https://mstdn.science/@nf_core)[![Watch on YouTube](http://img.shields.io/badge/youtube-nf--core-FF0000?labelColor=000000&logo=youtube)](https://www.youtube.com/c/nf-core) +[![Get help on Slack](http://img.shields.io/badge/slack-nf--core%20%23spatialaxe-4A154B?labelColor=000000&logo=slack)](https://nfcore.slack.com/channels/spatialaxe)[![Follow on Bluesky](https://img.shields.io/badge/bluesky-%40nf__core-1185fe?labelColor=000000&logo=bluesky)](https://bsky.app/profile/nf-co.re)[![Follow on Mastodon](https://img.shields.io/badge/mastodon-nf__core-6364ff?labelColor=FFFFFF&logo=mastodon)](https://mstdn.science/@nf_core)[![Watch on YouTube](http://img.shields.io/badge/youtube-nf--core-FF0000?labelColor=000000&logo=youtube)](https://www.youtube.com/c/nf-core) ## Introduction -**nf-core/spatialxe** is a bioinformatics best-practice processing and quality control pipeline for Xenium data. The current plan for the pipeline implementation is shown in the metromap below. **The pipeline is under active developement and changes might occure frequently**. +**nf-core/spatialaxe** is a bioinformatics best-practice processing and quality control pipeline for Xenium (and soon Atera) data. The current plan for the pipeline implementation is shown in the metromap below. **The pipeline is under active developement and changes might occure frequently**. -![nf-core/spatialxe-metromap](docs/images/spatialxe-metromap.png) +![nf-core/spatialaxe-metromap](docs/images/spatialaxe-metromap.png) > [!NOTE] -> We are currently testing the pipeline for the [10x Atera system](https://www.10xgenomics.com/platforms/atera). +> We are currently extending the pipeline for the [10x Atera system](https://www.10xgenomics.com/platforms/atera). ## Tools supported @@ -51,7 +51,7 @@ The pipeline supports the following tools: ## Usage -On release, automated continuous integration tests run the pipeline on a full-sized dataset on the AWS cloud infrastructure. This ensures that the pipeline runs on AWS, has sensible resource allocation defaults set to run on real-world datasets, and permits the persistent storage of results to benchmark between pipeline releases and other analysis sources. The results obtained from the full-sized test can be viewed on the [nf-core website](https://nf-co.re/spatialxe/results). +On release, automated continuous integration tests run the pipeline on a full-sized dataset on the AWS cloud infrastructure. This ensures that the pipeline runs on AWS, has sensible resource allocation defaults set to run on real-world datasets, and permits the persistent storage of results to benchmark between pipeline releases and other analysis sources. The results obtained from the full-sized test can be viewed on the [nf-core website](https://nf-co.re/spatialaxe/results). > [!NOTE] > The pipeline does not support conda currently. We are working on it. @@ -72,7 +72,7 @@ Now, you can run the pipeline using: `CELLPOSE -> BAYSOR -> XR-IMPORT_SEGMENTATION -> SPATIALDATA -> QC` ```bash -nextflow run nf-core/spatialxe \ +nextflow run nf-core/spatialaxe \ -profile \ --input samplesheet.csv \ --outdir \ @@ -84,7 +84,7 @@ nextflow run nf-core/spatialxe \ `PROSEG -> PROSEG2BAYSOR -> XR-IMPORT_SEGMENTATION -> SPATIALDATA -> QC` ```bash -nextflow run nf-core/spatialxe \ +nextflow run nf-core/spatialaxe \ -profile \ --input samplesheet.csv \ --outdir \ @@ -96,7 +96,7 @@ nextflow run nf-core/spatialxe \ `BAYSOR_SEGFREE` ```bash -nextflow run nf-core/spatialxe \ +nextflow run nf-core/spatialaxe \ -profile \ --input samplesheet.csv \ --outdir \ @@ -108,7 +108,7 @@ nextflow run nf-core/spatialxe \ `BAYSOR_PREVIEW` ```bash -nextflow run nf-core/spatialxe \ +nextflow run nf-core/spatialaxe \ -profile \ --input samplesheet.csv \ --outdir \ @@ -118,7 +118,7 @@ nextflow run nf-core/spatialxe \ ### Run just the quality control
```bash -nextflow run nf-core/spatialxe \ +nextflow run nf-core/spatialaxe \ -profile \ --input samplesheet.csv \ --outdir \ @@ -130,13 +130,13 @@ nextflow run nf-core/spatialxe \ > [!WARNING] > Please provide pipeline parameters via the CLI or Nextflow `-params-file` option. Custom config files including those provided by the `-c` Nextflow option can be used to provide any configuration _**except for parameters**_; see [docs](https://nf-co.re/docs/usage/getting_started/configuration#custom-configuration-files). -For more details and further functionality, please refer to the [usage documentation](https://nf-co.re/spatialxe/usage) and the [parameter documentation](https://nf-co.re/spatialxe/parameters). +For more details and further functionality, please refer to the [usage documentation](https://nf-co.re/spatialaxe/usage) and the [parameter documentation](https://nf-co.re/spatialaxe/parameters). ## Pipeline output -To see the results of an example test run with a full size dataset refer to the [results](https://nf-co.re/spatialxe/results) tab on the nf-core website pipeline page. +To see the results of an example test run with a full size dataset refer to the [results](https://nf-co.re/spatialaxe/results) tab on the nf-core website pipeline page. For more details about the output files and reports, please refer to the -[output documentation](https://nf-co.re/spatialxe/output). +[output documentation](https://nf-co.re/spatialaxe/output). ## Runtime and resource estimations @@ -163,7 +163,7 @@ For more details about the output files and reports, please refer to the ## Credits -nf-core/spatialxe is mainly developed by [Sameesh Kher](https://github.com/khersameesh24), [Dongze He](https://github.com/dongzehe), and [Florian Heyl](https://github.com/heylf). +nf-core/spatialaxe is mainly developed by [Sameesh Kher](https://github.com/khersameesh24), [Dongze He](https://github.com/dongzehe), and [Florian Heyl](https://github.com/heylf). We thank the following people for their extensive assistance in the development of this pipeline: @@ -177,11 +177,11 @@ We thank the following people for their extensive assistance in the development If you would like to contribute to this pipeline, please see the [contributing guidelines](.github/CONTRIBUTING.md). -For further information or help, don't hesitate to get in touch on the [Slack `#spatialxe` channel](https://nfcore.slack.com/channels/spatialxe) (you can join with [this invite](https://nf-co.re/join/slack)). +For further information or help, don't hesitate to get in touch on the [Slack `#spatialaxe` channel](https://nfcore.slack.com/channels/spatialaxe) (you can join with [this invite](https://nf-co.re/join/slack)). ## Citations - + An extensive list of references for the tools used by the pipeline can be found in the [`CITATIONS.md`](CITATIONS.md) file. diff --git a/assets/adaptivecard.json b/assets/adaptivecard.json index ab3cbbd1..1fbf3f15 100644 --- a/assets/adaptivecard.json +++ b/assets/adaptivecard.json @@ -17,7 +17,7 @@ "size": "Large", "weight": "Bolder", "color": "<% if (success) { %>Good<% } else { %>Attention<%} %>", - "text": "nf-core/spatialxe v${version} - ${runName}", + "text": "nf-core/spatialaxe v${version} - ${runName}", "wrap": true }, { diff --git a/assets/email_template.html b/assets/email_template.html index 35fd954c..636a526a 100644 --- a/assets/email_template.html +++ b/assets/email_template.html @@ -4,21 +4,21 @@ - - nf-core/spatialxe Pipeline Report + + nf-core/spatialaxe Pipeline Report
-

nf-core/spatialxe ${version}

+

nf-core/spatialaxe ${version}

Run Name: $runName

<% if (!success){ out << """
-

nf-core/spatialxe execution completed unsuccessfully!

+

nf-core/spatialaxe execution completed unsuccessfully!

The exit status of the task that caused the workflow execution to fail was: $exitStatus.

The full error message was:

${errorReport}
@@ -27,7 +27,7 @@

nf-core/spatialxe execution completed } else { out << """
- nf-core/spatialxe execution completed successfully! + nf-core/spatialaxe execution completed successfully!
""" } @@ -44,8 +44,8 @@

Pipeline Configuration:

-

nf-core/spatialxe

-

https://github.com/nf-core/spatialxe

+

nf-core/spatialaxe

+

https://github.com/nf-core/spatialaxe

diff --git a/assets/email_template.txt b/assets/email_template.txt index f92d5849..9447a493 100644 --- a/assets/email_template.txt +++ b/assets/email_template.txt @@ -4,15 +4,15 @@ |\\ | |__ __ / ` / \\ |__) |__ } { | \\| | \\__, \\__/ | \\ |___ \\`-._,-`-, `._,._,' - nf-core/spatialxe ${version} + nf-core/spatialaxe ${version} ---------------------------------------------------- Run Name: $runName <% if (success){ - out << "## nf-core/spatialxe execution completed successfully! ##" + out << "## nf-core/spatialaxe execution completed successfully! ##" } else { out << """#################################################### -## nf-core/spatialxe execution completed unsuccessfully! ## +## nf-core/spatialaxe execution completed unsuccessfully! ## #################################################### The exit status of the task that caused the workflow execution to fail was: $exitStatus. The full error message was: @@ -35,5 +35,5 @@ Pipeline Configuration: <% out << summary.collect{ k,v -> " - $k: $v" }.join("\n") %> -- -nf-core/spatialxe -https://github.com/nf-core/spatialxe +nf-core/spatialaxe +https://github.com/nf-core/spatialaxe diff --git a/assets/methods_description_template.yml b/assets/methods_description_template.yml index c1fbf537..abfb98ea 100644 --- a/assets/methods_description_template.yml +++ b/assets/methods_description_template.yml @@ -1,12 +1,12 @@ -id: "nf-core-spatialxe-methods-description" +id: "nf-core-spatialaxe-methods-description" description: "Suggested text and references to use when describing pipeline usage within the methods section of a publication." -section_name: "nf-core/spatialxe Methods Description" -section_href: "https://github.com/nf-core/spatialxe" +section_name: "nf-core/spatialaxe Methods Description" +section_href: "https://github.com/nf-core/spatialaxe" plot_type: "html" ## You inject any metadata in the Nextflow '${workflow}' object data: |

Methods

-

Data was processed using nf-core/spatialxe v${workflow.manifest.version} ${doi_text} of the nf-core collection of workflows (Ewels et al., 2020), utilising reproducible software environments from the Bioconda (Grüning et al., 2018) and Biocontainers (da Veiga Leprevost et al., 2017) projects.

+

Data was processed using nf-core/spatialaxe v${workflow.manifest.version} ${doi_text} of the nf-core collection of workflows (Ewels et al., 2020), utilising reproducible software environments from the Bioconda (Grüning et al., 2018) and Biocontainers (da Veiga Leprevost et al., 2017) projects.

The pipeline was executed with Nextflow v${workflow.nextflow.version} (Di Tommaso et al., 2017) with the following command:

${workflow.commandLine}

${tool_citations}

diff --git a/assets/multiqc_config.yml b/assets/multiqc_config.yml index f0862f78..8cff5748 100644 --- a/assets/multiqc_config.yml +++ b/assets/multiqc_config.yml @@ -1,11 +1,11 @@ report_comment: > - This report has been generated by the nf-core/spatialxe analysis pipeline. For information about how to interpret these results, please see the documentation. + This report has been generated by the nf-core/spatialaxe analysis pipeline. For information about how to interpret these results, please see the documentation. report_section_order: - "nf-core-spatialxe-methods-description": + "nf-core-spatialaxe-methods-description": order: -1000 software_versions: order: -1001 - "nf-core-spatialxe-summary": + "nf-core-spatialaxe-summary": order: -1002 export_plots: true diff --git a/assets/nf-core-spatialaxe_logo_light.png b/assets/nf-core-spatialaxe_logo_light.png new file mode 100644 index 00000000..c7a25c98 Binary files /dev/null and b/assets/nf-core-spatialaxe_logo_light.png differ diff --git a/assets/nf-core-spatialxe_logo_light.png b/assets/nf-core-spatialxe_logo_light.png deleted file mode 100644 index f74a46fb..00000000 Binary files a/assets/nf-core-spatialxe_logo_light.png and /dev/null differ diff --git a/assets/samplesheet.csv b/assets/samplesheet.csv index f5710dab..d30b6fdd 100644 --- a/assets/samplesheet.csv +++ b/assets/samplesheet.csv @@ -1,2 +1,2 @@ sample,bundle,image -test_run,https://raw.githubusercontent.com/nf-core/test-datasets/spatialxe/xenium_bundle.tar.gz +test_run,https://raw.githubusercontent.com/nf-core/test-datasets/spatialaxe/xenium_bundle.tar.gz diff --git a/assets/schema_input.json b/assets/schema_input.json index 2dfb357a..c6cda688 100644 --- a/assets/schema_input.json +++ b/assets/schema_input.json @@ -1,7 +1,7 @@ { "$schema": "https://json-schema.org/draft/2020-12/schema", - "$id": "https://raw.githubusercontent.com/nf-core/spatialxe/master/assets/schema_input.json", - "title": "nf-core/spatialxe pipeline - params.input schema", + "$id": "https://raw.githubusercontent.com/nf-core/spatialaxe/master/assets/schema_input.json", + "title": "nf-core/spatialaxe pipeline - params.input schema", "description": "Schema for the file provided with params.input", "type": "array", "items": { diff --git a/assets/sendmail_template.txt b/assets/sendmail_template.txt index cd864042..dd49eb59 100644 --- a/assets/sendmail_template.txt +++ b/assets/sendmail_template.txt @@ -9,12 +9,12 @@ Content-Type: text/html; charset=utf-8 $email_html --nfcoremimeboundary -Content-Type: image/png;name="nf-core-spatialxe_logo.png" +Content-Type: image/png;name="nf-core-spatialaxe_logo.png" Content-Transfer-Encoding: base64 Content-ID: -Content-Disposition: inline; filename="nf-core-spatialxe_logo_light.png" +Content-Disposition: inline; filename="nf-core-spatialaxe_logo_light.png" -<% out << new File("$projectDir/assets/nf-core-spatialxe_logo_light.png"). +<% out << new File("$projectDir/assets/nf-core-spatialaxe_logo_light.png"). bytes. encodeBase64(). toString(). diff --git a/assets/slackreport.json b/assets/slackreport.json index c139eab6..a2991f65 100644 --- a/assets/slackreport.json +++ b/assets/slackreport.json @@ -3,7 +3,7 @@ { "fallback": "Plain-text summary of the attachment.", "color": "<% if (success) { %>good<% } else { %>danger<%} %>", - "author_name": "nf-core/spatialxe ${version} - ${runName}", + "author_name": "nf-core/spatialaxe ${version} - ${runName}", "author_icon": "https://www.nextflow.io/docs/latest/_static/favicon.ico", "text": "<% if (success) { %>Pipeline completed successfully!<% } else { %>Pipeline completed with errors<% } %>", "fields": [ diff --git a/bin/segger_create_dataset.py b/bin/segger_create_dataset.py index c73ab006..c031427d 100755 --- a/bin/segger_create_dataset.py +++ b/bin/segger_create_dataset.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 """ -Run segger create_dataset with spatialxe-specific preprocessing and workarounds. +Run segger create_dataset with spatialaxe-specific preprocessing and workarounds. Wraps segger's create_dataset_fast.py with: - bundle_local symlink prep (handles read-only S3/Fusion mounts) diff --git a/bin/segger_predict.py b/bin/segger_predict.py index 56a77ffc..b3e1f289 100755 --- a/bin/segger_predict.py +++ b/bin/segger_predict.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 """ -Run segger predict with spatialxe-specific preprocessing. +Run segger predict with spatialaxe-specific preprocessing. Wraps segger's predict_fast.py with: - GPU enumeration (replaces inline python3 -c torch check) diff --git a/conf/base.config b/conf/base.config index 45b62604..476c4dbe 100644 --- a/conf/base.config +++ b/conf/base.config @@ -1,6 +1,6 @@ /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - nf-core/spatialxe Nextflow base config file + nf-core/spatialaxe Nextflow base config file ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ A 'blank slate' config file, appropriate for general use on most high performance compute environments. Assumes that all software is installed and available on diff --git a/conf/test.config b/conf/test.config index bae5a73f..e317612d 100644 --- a/conf/test.config +++ b/conf/test.config @@ -5,7 +5,7 @@ Defines input files and everything required to run a fast and simple pipeline test. Use as follows: - nextflow run nf-core/spatialxe -profile test, --mode --outdir + nextflow run nf-core/spatialaxe -profile test, --mode --outdir ---------------------------------------------------------------------------------------- */ diff --git a/conf/test_coordinate_mode.config b/conf/test_coordinate_mode.config index e8338a5c..cccdae57 100644 --- a/conf/test_coordinate_mode.config +++ b/conf/test_coordinate_mode.config @@ -5,7 +5,7 @@ Defines input files and everything required to run a fast and simple pipeline test. Use as follows: - nextflow run nf-core/spatialxe -profile test, --mode --outdir + nextflow run nf-core/spatialaxe -profile test, --mode --outdir ---------------------------------------------------------------------------------------- */ diff --git a/conf/test_full.config b/conf/test_full.config index 9e0980c4..68ce4186 100644 --- a/conf/test_full.config +++ b/conf/test_full.config @@ -5,7 +5,7 @@ Defines input files and everything required to run a full size pipeline test. Use as follows: - nextflow run nf-core/spatialxe -profile test_full, --outdir + nextflow run nf-core/spatialaxe -profile test_full, --outdir ---------------------------------------------------------------------------------------- */ diff --git a/conf/test_image_mode.config b/conf/test_image_mode.config index 17e8124a..ff9199d1 100644 --- a/conf/test_image_mode.config +++ b/conf/test_image_mode.config @@ -5,7 +5,7 @@ Defines input files and everything required to run a fast and simple pipeline test. Use as follows: - nextflow run nf-core/spatialxe -profile test, --mode --outdir + nextflow run nf-core/spatialaxe -profile test, --mode --outdir ---------------------------------------------------------------------------------------- */ diff --git a/conf/test_preview_mode.config b/conf/test_preview_mode.config index 144a2349..5f312892 100644 --- a/conf/test_preview_mode.config +++ b/conf/test_preview_mode.config @@ -5,7 +5,7 @@ Defines input files and everything required to run a fast and simple pipeline test. Use as follows: - nextflow run nf-core/spatialxe -profile test, --mode --outdir + nextflow run nf-core/spatialaxe -profile test, --mode --outdir ---------------------------------------------------------------------------------------- */ diff --git a/conf/test_segfree_mode.config b/conf/test_segfree_mode.config index 5f4467b5..4576929d 100644 --- a/conf/test_segfree_mode.config +++ b/conf/test_segfree_mode.config @@ -5,7 +5,7 @@ Defines input files and everything required to run a fast and simple pipeline test. Use as follows: - nextflow run nf-core/spatialxe -profile test, --mode --outdir + nextflow run nf-core/spatialaxe -profile test, --mode --outdir ---------------------------------------------------------------------------------------- */ diff --git a/docs/README.md b/docs/README.md index 2f7c904b..c7b0845a 100644 --- a/docs/README.md +++ b/docs/README.md @@ -1,6 +1,6 @@ -# nf-core/spatialxe: Documentation +# nf-core/spatialaxe: Documentation -The nf-core/spatialxe documentation is split into the following pages: +The nf-core/spatialaxe documentation is split into the following pages: - [Usage](usage.md) - An overview of how the pipeline works, how to run it and a description of all of the different command-line flags. diff --git a/docs/images/nf-core-spatialaxe_logo_dark.png b/docs/images/nf-core-spatialaxe_logo_dark.png new file mode 100644 index 00000000..52ecaa70 Binary files /dev/null and b/docs/images/nf-core-spatialaxe_logo_dark.png differ diff --git a/docs/images/nf-core-spatialaxe_logo_light.png b/docs/images/nf-core-spatialaxe_logo_light.png new file mode 100644 index 00000000..67bdab99 Binary files /dev/null and b/docs/images/nf-core-spatialaxe_logo_light.png differ diff --git a/docs/images/nf-core-spatialxe_logo_dark.png b/docs/images/nf-core-spatialxe_logo_dark.png deleted file mode 100644 index 927c3bfb..00000000 Binary files a/docs/images/nf-core-spatialxe_logo_dark.png and /dev/null differ diff --git a/docs/images/nf-core-spatialxe_logo_light.png b/docs/images/nf-core-spatialxe_logo_light.png deleted file mode 100644 index e933cdfa..00000000 Binary files a/docs/images/nf-core-spatialxe_logo_light.png and /dev/null differ diff --git a/docs/images/spatialaxe-logo.png b/docs/images/spatialaxe-logo.png new file mode 100644 index 00000000..16876b2a Binary files /dev/null and b/docs/images/spatialaxe-logo.png differ diff --git a/docs/images/spatialaxe-logo.svg b/docs/images/spatialaxe-logo.svg new file mode 100644 index 00000000..0cfb104d --- /dev/null +++ b/docs/images/spatialaxe-logo.svg @@ -0,0 +1,224 @@ + + diff --git a/docs/images/spatialaxe-metromap.png b/docs/images/spatialaxe-metromap.png new file mode 100644 index 00000000..860b331e Binary files /dev/null and b/docs/images/spatialaxe-metromap.png differ diff --git a/docs/images/spatialxe-metromap.svg b/docs/images/spatialaxe-metromap.svg similarity index 86% rename from docs/images/spatialxe-metromap.svg rename to docs/images/spatialaxe-metromap.svg index bcd548a9..62490533 100644 --- a/docs/images/spatialxe-metromap.svg +++ b/docs/images/spatialaxe-metromap.svg @@ -28,8 +28,8 @@ inkscape:deskcolor="#d1d1d1" inkscape:document-units="mm" inkscape:zoom="1.0716961" - inkscape:cx="331.71717" - inkscape:cy="427.82651" + inkscape:cx="626.57688" + inkscape:cy="364.37568" inkscape:window-width="2560" inkscape:window-height="1403" inkscape:window-x="0" @@ -1107,7 +1107,15 @@ id="g4803">XeniumDataXenium bundleBundleXenium onboardOnboardanalysis (XOA)analysis (OA) - diff --git a/docs/images/spatialxe-metromap.png b/docs/images/spatialxe-metromap.png deleted file mode 100644 index 87f17903..00000000 Binary files a/docs/images/spatialxe-metromap.png and /dev/null differ diff --git a/docs/output.md b/docs/output.md index 5f4c0b9e..68c0256a 100644 --- a/docs/output.md +++ b/docs/output.md @@ -1,4 +1,4 @@ -# nf-core/spatialxe: Output +# nf-core/spatialaxe: Output ## Introduction @@ -16,7 +16,7 @@ The pipeline is built using [Nextflow](https://www.nextflow.io/) and processes d - [segfree mode](#segfree-mode) - [qc mode](#qc-mode) (or using `--run_qc`) - [preview mode](#preview-mode) -- [Additional functionality of spatialxe](#additional-functionality): +- [Additional functionality of spatialaxe](#additional-functionality): - [SpatialData](#spatialdata) - [Xenium Ranger import segmentation](#xenium-ranger-import-segmentation) - [MultiQC](#multiqc) - Aggregate report describing results and QC from the whole pipeline @@ -157,7 +157,7 @@ The pipeline create spatialdata objects (data bundles) on various stages (see me - `spatialdata/` - `write/${meta.id}/spatialdata/` spatialdata bundle of the raw data - - `meta/${meta.id}/spatialdata_spatialxe_final/` spatialdata bundle of the final data with metadata + - `meta/${meta.id}/spatialdata_spatialaxe_final/` spatialdata bundle of the final data with metadata - `sdata['raw_table'].uns['spatialdata_attrs']` provenance metadata - `sdata['raw_table'].uns['experiment_xenium']` experimental metadata - `sdata['raw_table'].uns['gene_panel']` gene panel metadata diff --git a/docs/usage.md b/docs/usage.md index 189ecd88..02523048 100644 --- a/docs/usage.md +++ b/docs/usage.md @@ -1,6 +1,6 @@ -# nf-core/spatialxe: Usage +# nf-core/spatialaxe: Usage -## :warning: Please read this documentation on the nf-core website: [https://nf-co.re/spatialxe/usage](https://nf-co.re/spatialxe/usage) +## :warning: Please read this documentation on the nf-core website: [https://nf-co.re/spatialaxe/usage](https://nf-co.re/spatialaxe/usage) > _Documentation of pipeline parameters is generated automatically from the pipeline schema and can no longer be found in markdown files._ @@ -39,7 +39,7 @@ This runs the default image mode:
`CELLPOSE ➔ BAYSOR ➔ XR-IMPORT-SEGMENTATION ➔ SPATIALDATA ➔ QC` ```bash -nextflow run nf-core/spatialxe \ +nextflow run nf-core/spatialaxe \ -profile --input ./samplesheet.csv \ --outdir ./results \ @@ -52,7 +52,7 @@ This runs the default coordinate mode:
`PROSEG ➔ PROSEG2BAYSOR ➔ XR-IMPORT-SEGMENTATION ➔ SPATIALDATA ➔ QC` ```bash -nextflow run nf-core/spatialxe \ +nextflow run nf-core/spatialaxe \ -profile --input ./samplesheet.csv \ --outdir ./results \ @@ -64,7 +64,7 @@ nextflow run nf-core/spatialxe \ `BAYSOR_SEGFREE` ```bash -nextflow run nf-core/spatialxe \ +nextflow run nf-core/spatialaxe \ -profile \ --input samplesheet.csv \ --outdir \ @@ -76,7 +76,7 @@ nextflow run nf-core/spatialxe \ `BAYSOR_PREVIEW` ```bash -nextflow run nf-core/spatialxe \ +nextflow run nf-core/spatialaxe \ -profile \ --input samplesheet.csv \ --outdir \ @@ -88,7 +88,7 @@ nextflow run nf-core/spatialxe \ It is possible to run the quality control with `--run_qc` to couple it with another mode like so: ```bash -nextflow run nf-core/spatialxe \ +nextflow run nf-core/spatialaxe \ -profile --input ./samplesheet.csv \ --outdir ./results \ @@ -99,7 +99,7 @@ nextflow run nf-core/spatialxe \ It is also possible to run just he QC with: ```bash -nextflow run nf-core/spatialxe \ +nextflow run nf-core/spatialaxe \ -profile \ --input samplesheet.csv \ --outdir \ @@ -133,7 +133,7 @@ nextflow run nf-core/spatialxe \ eg: To run proseg segmentation use the `coordinate` mode and the `proseg` segmentation method (--method) ```bash -nextflow run nf-core/spatialxe \ +nextflow run nf-core/spatialaxe \ -profile --input ./samplesheet.csv \ --outdir ./results \ @@ -144,7 +144,7 @@ nextflow run nf-core/spatialxe \ eg: To run cellpose segmentation use the `image` mode and the `cellpose` segmentation method (--method) ```bash -nextflow run nf-core/spatialxe \ +nextflow run nf-core/spatialaxe \ -profile --input ./samplesheet.csv \ --outdir ./results \ @@ -173,7 +173,7 @@ Pipeline settings can be provided in a `yaml` or `json` file via `-params-file < The above pipeline run specified with a params file in yaml format: ```bash -nextflow run nf-core/spatialxe -profile docker -params-file params.yaml +nextflow run nf-core/spatialaxe -profile docker -params-file params.yaml ``` with: @@ -191,14 +191,14 @@ You can also generate such `YAML`/`JSON` files via [nf-core/launch](https://nf-c When you run the above command, Nextflow automatically pulls the pipeline code from GitHub and stores it as a cached version. When running the pipeline after this, it will always use the cached version if available - even if the pipeline has been updated since. To make sure that you're running the latest version of the pipeline, make sure that you regularly update the cached version of the pipeline: ```bash -nextflow pull nf-core/spatialxe +nextflow pull nf-core/spatialaxe ``` ### Reproducibility It is a good idea to specify the pipeline version when running the pipeline on your data. This ensures that a specific version of the pipeline code and software are used when you run your pipeline. If you keep using the same tag, you'll be running the same version of the pipeline, even if there have been changes to the code since. -First, go to the [nf-core/spatialxe releases page](https://github.com/nf-core/spatialxe/releases) and find the latest pipeline version - numeric only (eg. `1.0.0`). Then specify this when running the pipeline with `-r` (one hyphen) - eg. `-r 1.0.0`. Of course, you can switch to another version by changing the number after the `-r` flag. +First, go to the [nf-core/spatialaxe releases page](https://github.com/nf-core/spatialaxe/releases) and find the latest pipeline version - numeric only (eg. `1.0.0`). Then specify this when running the pipeline with `-r` (one hyphen) - eg. `-r 1.0.0`. Of course, you can switch to another version by changing the number after the `-r` flag. This version number will be logged in reports when you run the pipeline, so that you'll know what you used when you look back in the future. For example, at the bottom of the MultiQC reports. diff --git a/main.nf b/main.nf index b6dde5f9..ed5c9d42 100644 --- a/main.nf +++ b/main.nf @@ -1,11 +1,11 @@ #!/usr/bin/env nextflow /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - nf-core/spatialxe + nf-core/spatialaxe ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - Github : https://github.com/nf-core/spatialxe - Website: https://nf-co.re/spatialxe - Slack : https://nfcore.slack.com/channels/spatialxe + Github : https://github.com/nf-core/spatialaxe + Website: https://nf-co.re/spatialaxe + Slack : https://nfcore.slack.com/channels/spatialaxe ---------------------------------------------------------------------------------------- */ @@ -15,9 +15,9 @@ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ -include { SPATIALXE } from './workflows/spatialxe.nf' -include { PIPELINE_INITIALISATION } from './subworkflows/local/utils_nfcore_spatialxe_pipeline' -include { PIPELINE_COMPLETION } from './subworkflows/local/utils_nfcore_spatialxe_pipeline' +include { SPATIALAXE } from './workflows/spatialaxe.nf' +include { PIPELINE_INITIALISATION } from './subworkflows/local/utils_nfcore_spatialaxe_pipeline' +include { PIPELINE_COMPLETION } from './subworkflows/local/utils_nfcore_spatialaxe_pipeline' /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -28,7 +28,7 @@ include { PIPELINE_COMPLETION } from './subworkflows/local/utils_nfcore_spat // // WORKFLOW: Run main analysis pipeline depending on type of input // -workflow NFCORE_SPATIALXE { +workflow NFCORE_SPATIALAXE { take: samplesheet // channel: samplesheet read in from --input @@ -38,7 +38,7 @@ workflow NFCORE_SPATIALXE { // // WORKFLOW: Run pipeline // - SPATIALXE ( + SPATIALAXE ( samplesheet, params.alignment_csv, params.baysor_config, @@ -81,7 +81,7 @@ workflow NFCORE_SPATIALXE { params.xeniumranger_only, ) emit: - multiqc_report = SPATIALXE.out.multiqc_report // channel: /path/to/multiqc_report.html + multiqc_report = SPATIALAXE.out.multiqc_report // channel: /path/to/multiqc_report.html } /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -123,7 +123,7 @@ workflow { // // WORKFLOW: Run main workflow // - NFCORE_SPATIALXE ( + NFCORE_SPATIALAXE ( PIPELINE_INITIALISATION.out.samplesheet ) // @@ -136,7 +136,7 @@ workflow { params.outdir, params.monochrome_logs, params.hook_url, - NFCORE_SPATIALXE.out.multiqc_report + NFCORE_SPATIALAXE.out.multiqc_report ) } diff --git a/modules.json b/modules.json index 17d34a4a..c215c2ed 100644 --- a/modules.json +++ b/modules.json @@ -1,6 +1,6 @@ { - "name": "nf-core/spatialxe", - "homePage": "https://github.com/nf-core/spatialxe", + "name": "nf-core/spatialaxe", + "homePage": "https://github.com/nf-core/spatialaxe", "repos": { "https://github.com/nf-core/modules.git": { "modules": { diff --git a/modules/local/spatialdata/merge/meta.yml b/modules/local/spatialdata/merge/meta.yml index 47faf763..248d5bc2 100644 --- a/modules/local/spatialdata/merge/meta.yml +++ b/modules/local/spatialdata/merge/meta.yml @@ -25,16 +25,16 @@ input: Path to spatialdata bundle that should be added. output: - - spatialxe_bundle: + - spatialaxe_bundle: - meta: type: map description: | Groovy Map containing sample information e.g. [ id:'sample' ] - - "spatialdata_spatialxe": + - "spatialdata_spatialaxe": type: folder description: Spatialdata folder - pattern: "${meta.id}/spatialdata_spatialxe/*" + pattern: "${meta.id}/spatialdata_spatialaxe/*" - versions: type: file description: File containing software versions diff --git a/modules/local/spatialdata/meta/meta.yml b/modules/local/spatialdata/meta/meta.yml index bf7615b4..8450c932 100644 --- a/modules/local/spatialdata/meta/meta.yml +++ b/modules/local/spatialdata/meta/meta.yml @@ -25,16 +25,16 @@ input: Path to Xeniumranger bundle. output: - - spatialxe_bundle: + - spatialaxe_bundle: - meta: type: map description: | Groovy Map containing sample information e.g. [ id:'sample' ] - - "spatialdata_spatialxe_final": + - "spatialdata_spatialaxe_final": type: folder description: Spatialdata folder - pattern: "${meta.id}/spatialdata_spatialxe_final/*" + pattern: "${meta.id}/spatialdata_spatialaxe_final/*" - versions: type: file description: File containing software versions diff --git a/modules/nf-core/xeniumranger/import-segmentation/tests/main.nf.test b/modules/nf-core/xeniumranger/import-segmentation/tests/main.nf.test index e61cdc11..71198099 100644 --- a/modules/nf-core/xeniumranger/import-segmentation/tests/main.nf.test +++ b/modules/nf-core/xeniumranger/import-segmentation/tests/main.nf.test @@ -16,7 +16,7 @@ nextflow_process { script "modules/nf-core/unzip/main.nf" process { """ - input[0] = [[], file('https://raw.githubusercontent.com/nf-core/test-datasets/spatialxe/Xenium_Prime_Mouse_Ileum_tiny_outs.zip', checkIfExists: true)] + input[0] = [[], file('https://raw.githubusercontent.com/nf-core/test-datasets/spatialaxe/Xenium_Prime_Mouse_Ileum_tiny_outs.zip', checkIfExists: true)] """ } } diff --git a/modules/nf-core/xeniumranger/relabel/tests/main.nf.test b/modules/nf-core/xeniumranger/relabel/tests/main.nf.test index 7c37a32a..e00f1caa 100644 --- a/modules/nf-core/xeniumranger/relabel/tests/main.nf.test +++ b/modules/nf-core/xeniumranger/relabel/tests/main.nf.test @@ -16,7 +16,7 @@ nextflow_process { script "modules/nf-core/unzip/main.nf" process { """ - input[0] = [[], file('https://raw.githubusercontent.com/nf-core/test-datasets/spatialxe/Xenium_Prime_Mouse_Ileum_tiny_outs.zip', checkIfExists: true)] + input[0] = [[], file('https://raw.githubusercontent.com/nf-core/test-datasets/spatialaxe/Xenium_Prime_Mouse_Ileum_tiny_outs.zip', checkIfExists: true)] """ } } diff --git a/modules/nf-core/xeniumranger/resegment/tests/main.nf.test b/modules/nf-core/xeniumranger/resegment/tests/main.nf.test index 36f26f46..241f084c 100644 --- a/modules/nf-core/xeniumranger/resegment/tests/main.nf.test +++ b/modules/nf-core/xeniumranger/resegment/tests/main.nf.test @@ -16,7 +16,7 @@ nextflow_process { script "modules/nf-core/unzip/main.nf" process { """ - input[0] = [[], file('https://raw.githubusercontent.com/nf-core/test-datasets/spatialxe/Xenium_Prime_Mouse_Ileum_tiny_outs.zip', checkIfExists: true)] + input[0] = [[], file('https://raw.githubusercontent.com/nf-core/test-datasets/spatialaxe/Xenium_Prime_Mouse_Ileum_tiny_outs.zip', checkIfExists: true)] """ } } diff --git a/nextflow.config b/nextflow.config index 214a5b6f..99b638cc 100644 --- a/nextflow.config +++ b/nextflow.config @@ -1,6 +1,6 @@ /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - nf-core/spatialxe Nextflow config file + nf-core/spatialaxe Nextflow config file ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Default config options for all compute environments ---------------------------------------------------------------------------------------- @@ -151,7 +151,7 @@ params { custom_config_base = "https://raw.githubusercontent.com/nf-core/configs/${params.custom_config_version}" config_profile_contact = null config_profile_url = null - test_data_base = 'https://raw.githubusercontent.com/nf-core/test-datasets/spatialxe' + test_data_base = 'https://raw.githubusercontent.com/nf-core/test-datasets/spatialaxe' // Schema validation default options @@ -293,8 +293,8 @@ profiles { // Load nf-core custom profiles from different institutions │ includeConfig params.custom_config_base && (!System.getenv('NXF_OFFLINE') || !params.custom_config_base.startsWith('http')) ? "${params.custom_config_base}/nfcore_custom.config" : "/dev/null" -// Load nf-core/spatialxe custom profiles from different institutions. -includeConfig !System.getenv('NXF_OFFLINE') && params.custom_config_base ? "${params.custom_config_base}/pipeline/spatialxe.config" : "/dev/null" +// Load nf-core/spatialaxe custom profiles from different institutions. +includeConfig !System.getenv('NXF_OFFLINE') && params.custom_config_base ? "${params.custom_config_base}/pipeline/spatialaxe.config" : "/dev/null" // Set default registry for Apptainer, Docker, Podman, Charliecloud and Singularity independent of -profile // Will not be used unless Apptainer / Docker / Podman / Charliecloud / Singularity are enabled @@ -353,7 +353,7 @@ dag { } manifest { - name = 'nf-core/spatialxe' + name = 'nf-core/spatialaxe' contributors = [ [ name: 'Sameesh Kher', @@ -380,7 +380,7 @@ manifest { orcid: '0000-0001-8259-7434' ] ] - homePage = 'https://github.com/nf-core/spatialxe' + homePage = 'https://github.com/nf-core/spatialaxe' description = """A pipeline for spatialomics 10x Xenium In Situ data.""" mainScript = 'main.nf' defaultBranch = 'master' diff --git a/nextflow_schema.json b/nextflow_schema.json index 3817956e..58a47276 100644 --- a/nextflow_schema.json +++ b/nextflow_schema.json @@ -1,8 +1,8 @@ { "$schema": "https://json-schema.org/draft/2020-12/schema", - "$id": "https://raw.githubusercontent.com/nf-core/spatialxe/master/nextflow_schema.json", - "title": "nf-core/spatialxe pipeline parameters", - "description": "A pipeline for spatialomics 10x Xenium In Situ data.", + "$id": "https://raw.githubusercontent.com/nf-core/spatialaxe/master/nextflow_schema.json", + "title": "nf-core/spatialaxe pipeline parameters", + "description": "A pipeline to process spatialomics data from 10x Xenium In Situ or 10x Atera.", "type": "object", "$defs": { "input_output_options": { @@ -119,7 +119,7 @@ "segmentation_options": { "title": "Segmentation options", "type": "object", - "description": "Options for the segmentation layer of the spatialxe pipeline", + "description": "Options for the segmentation layer of the spatialaxe pipeline", "default": "", "properties": { "run_qc": { @@ -470,7 +470,7 @@ }, "test_data_base": { "type": "string", - "default": "https://raw.githubusercontent.com/nf-core/test-datasets/spatialxe", + "default": "https://raw.githubusercontent.com/nf-core/test-datasets/spatialaxe", "description": "Base path / URL for data used in the test profiles." } } diff --git a/ro-crate-metadata.json b/ro-crate-metadata.json index 89f81f6a..eb24c81a 100644 --- a/ro-crate-metadata.json +++ b/ro-crate-metadata.json @@ -1,6 +1,6 @@ { "@context": [ - "https://w3id.org/ro/crate/1.1/context", + "https://w3id.org/ro/crate/1.2/context", { "GithubService": "https://w3id.org/ro/terms/test#GithubService", "JenkinsService": "https://w3id.org/ro/terms/test#JenkinsService", @@ -22,8 +22,8 @@ "@id": "./", "@type": "Dataset", "creativeWorkStatus": "Stable", - "datePublished": "2026-04-28T15:09:48+00:00", - "description": "

\n \n \n \"nf-core/spatialxe\"\n \n

\n\n[![Open in GitHub Codespaces](https://github.com/codespaces/badge.svg)](https://github.com/codespaces/new/nf-core/spatialxe)\n[![GitHub Actions CI Status](https://github.com/nf-core/spatialxe/actions/workflows/nf-test.yml/badge.svg)](https://github.com/nf-core/spatialxe/actions/workflows/nf-test.yml)\n[![GitHub Actions Linting Status](https://github.com/nf-core/spatialxe/actions/workflows/linting.yml/badge.svg)](https://github.com/nf-core/spatialxe/actions/workflows/linting.yml)[![AWS CI](https://img.shields.io/badge/CI%20tests-full%20size-FF9900?labelColor=000000&logo=Amazon%20AWS)](https://nf-co.re/spatialxe/results)[![Cite with Zenodo](http://img.shields.io/badge/DOI-10.5281/zenodo.XXXXXXX-1073c8?labelColor=000000)](https://doi.org/10.5281/zenodo.XXXXXXX)\n[![nf-test](https://img.shields.io/badge/unit_tests-nf--test-337ab7.svg)](https://www.nf-test.com)\n\n[![Nextflow](https://img.shields.io/badge/version-%E2%89%A525.04.0-green?style=flat&logo=nextflow&logoColor=white&color=%230DC09D&link=https%3A%2F%2Fnextflow.io)](https://www.nextflow.io/)\n[![nf-core template version](https://img.shields.io/badge/nf--core_template-3.4.1-green?style=flat&logo=nfcore&logoColor=white&color=%2324B064&link=https%3A%2F%2Fnf-co.re)](https://github.com/nf-core/tools/releases/tag/3.4.1)\n[![run with docker](https://img.shields.io/badge/run%20with-docker-0db7ed?labelColor=000000&logo=docker)](https://www.docker.com/)\n[![run with singularity](https://img.shields.io/badge/run%20with-singularity-1d355c.svg?labelColor=000000)](https://sylabs.io/docs/)\n[![Launch on Seqera Platform](https://img.shields.io/badge/Launch%20%F0%9F%9A%80-Seqera%20Platform-%234256e7)](https://cloud.seqera.io/launch?pipeline=https://github.com/nf-core/spatialxe)\n\n[![Get help on Slack](http://img.shields.io/badge/slack-nf--core%20%23spatialxe-4A154B?labelColor=000000&logo=slack)](https://nfcore.slack.com/channels/spatialxe)[![Follow on Bluesky](https://img.shields.io/badge/bluesky-%40nf__core-1185fe?labelColor=000000&logo=bluesky)](https://bsky.app/profile/nf-co.re)[![Follow on Mastodon](https://img.shields.io/badge/mastodon-nf__core-6364ff?labelColor=FFFFFF&logo=mastodon)](https://mstdn.science/@nf_core)[![Watch on YouTube](http://img.shields.io/badge/youtube-nf--core-FF0000?labelColor=000000&logo=youtube)](https://www.youtube.com/c/nf-core)\n\n## Introduction\n\n**nf-core/spatialxe** is a bioinformatics best-practice processing and quality control pipeline for Xenium data. The current plan for the pipeline implementation is shown in the metromap below. **The pipeline is under active developement and changes might occure frequently**.\n\n![nf-core/spatialxe-metromap](docs/images/spatialxe-metromap.png)\n\n> [!NOTE]\n> We are currently testing the pipeline for the [10x Atera system](https://www.10xgenomics.com/platforms/atera).\n\n## Tools supported\n\nThe pipeline supports the following tools:\n\n- Segmenation methods:\n - [Baysor](https://doi.org/10.1038/s41587-021-01044-w)\n - [Cellpose](https://doi.org/10.1038/s41592-020-01018-x)\n - [Xenium ranger (XR)](https://www.10xgenomics.com/support/software/xenium-ranger/latest)\n - [StarDist](https://doi.org/10.48550/arXiv.2203.02284)\n- Segmentation free methods:\n - [Ficture](https://doi.org/10.1038/s41592-024-02415-2)\n - [Baysor](https://doi.org/10.1038/s41587-021-01044-w)\n- Transcript assignment methods:\n - [Segger](https://doi.org/10.1101/2025.03.14.643160)\n - [Proseg](https://doi.org/10.1038/s41592-025-02697-0)\n- Utility methods:\n - [SpatialData](https://doi.org/10.1038/s41592-024-02212-x)\n - [Baysor](https://doi.org/10.1038/s41587-021-01044-w)\n- QC methods:\n - [MultiQC Xenium Extra Plugin](https://github.com/MultiQC/xenium-extra)\n - [OPT](https://github.com/JEFworks-Lab/off-target-probe-tracker)\n\n## Usage\n\nOn release, automated continuous integration tests run the pipeline on a full-sized dataset on the AWS cloud infrastructure. This ensures that the pipeline runs on AWS, has sensible resource allocation defaults set to run on real-world datasets, and permits the persistent storage of results to benchmark between pipeline releases and other analysis sources. The results obtained from the full-sized test can be viewed on the [nf-core website](https://nf-co.re/spatialxe/results).\n\n> [!NOTE]\n> The pipeline does not support conda currently. We are working on it.\n\n## Quick Start\n\n`samplesheet.csv`:\n\n```csv\nsample,bundle,image\ntest_sample,/path/to/xenium-bundle,/path/to/morphology.ome.tif\n```\n\nNow, you can run the pipeline using:\n\n### Run image-based segmentation mode
\n\n`CELLPOSE -> BAYSOR -> XR-IMPORT_SEGMENTATION -> SPATIALDATA -> QC`\n\n```bash\nnextflow run nf-core/spatialxe \\\n -profile \\\n --input samplesheet.csv \\\n --outdir \\\n --mode \n```\n\n### Run coordinate-based segmentation mode
\n\n`PROSEG -> PROSEG2BAYSOR -> XR-IMPORT_SEGMENTATION -> SPATIALDATA -> QC`\n\n```bash\nnextflow run nf-core/spatialxe \\\n -profile \\\n --input samplesheet.csv \\\n --outdir \\\n --mode coordinate\n```\n\n### Run segfree mode
\n\n`BAYSOR_SEGFREE`\n\n```bash\nnextflow run nf-core/spatialxe \\\n -profile \\\n --input samplesheet.csv \\\n --outdir \\\n --mode segfree\n```\n\n### Run preview mode
\n\n`BAYSOR_PREVIEW`\n\n```bash\nnextflow run nf-core/spatialxe \\\n -profile \\\n --input samplesheet.csv \\\n --outdir \\\n --mode preview\n```\n\n### Run just the quality control
\n\n```bash\nnextflow run nf-core/spatialxe \\\n -profile \\\n --input samplesheet.csv \\\n --outdir \\\n --mode qc\n```\n\n### Additional information\n\n> [!WARNING]\n> Please provide pipeline parameters via the CLI or Nextflow `-params-file` option. Custom config files including those provided by the `-c` Nextflow option can be used to provide any configuration _**except for parameters**_; see [docs](https://nf-co.re/docs/usage/getting_started/configuration#custom-configuration-files).\n\nFor more details and further functionality, please refer to the [usage documentation](https://nf-co.re/spatialxe/usage) and the [parameter documentation](https://nf-co.re/spatialxe/parameters).\n\n## Pipeline output\n\nTo see the results of an example test run with a full size dataset refer to the [results](https://nf-co.re/spatialxe/results) tab on the nf-core website pipeline page.\nFor more details about the output files and reports, please refer to the\n[output documentation](https://nf-co.re/spatialxe/output).\n\n## Runtime and resource estimations\n\n| Tool | Compute | Runtime (min / med / max) | Peak RSS (min / med / max) |\n| ------------------------- | ------- | ------------------------- | -------------------------- |\n| Cellpose | GPU | 1m / 4m / 1.4h | 10 GB / 26 GB / 554 GB |\n| Cellpose | CPU | 1.3h / 2.3h / 6.5h | 161 GB / 426 GB / 1115 GB |\n| StarDist | GPU | 1m / 4m / 7m | 5 GB / 12 GB / 18 GB |\n| StarDist | CPU | 5m / 6m / 7m | 18 GB / 18 GB / 18 GB |\n| Segger (create_dataset) | GPU | 2m / 9m / 31m | 1.7 GB / 14 GB / 50 GB |\n| Segger (create_dataset) | CPU | 13m / 21m / 46m | 13 GB / 19 GB / 49 GB |\n| Segger (train) | GPU | 10m / 43m / 2.9h | 30 GB / 33 GB / 60 GB |\n| Segger (predict) | GPU | 2m / 16m / 59m | 10 GB / 25 GB / 87 GB |\n| Baysor (whole-image) | CPU | 2m / 30m / 17h | 6 GB / 10 GB / 650 GB |\n| Baysor (tiled) | CPU | 1m / 18m / 13h | 0.2 GB / 34 GB / 530 GB |\n| Proseg | CPU | 1m / 18m / 6.8h | 279 MB / 3.8 GB / 136 GB |\n| XeniumRanger (resegment) | CPU | 18m / 39m / 3.7h | 28 GB / 54 GB / 60 GB |\n| XeniumRanger (import_seg) | CPU | 2m / 7m / 2.7h | 2.6 GB / 11 GB / 51 GB |\n| Ficture (preprocess) | CPU | 3m / 4m / 13m | 331 MB / 357 MB / 21 GB |\n\n- Cellpose GPU vs CPU: 35x faster on GPU (4m median vs 2.3h), 16x less memory (26 GB vs 426 GB)\n- Segger: Only tool that truly requires GPU for all 3 steps (create_dataset, train, predict)\n- StarDist: Very fast on CPU, GPU is not necessary to run its default model\n\n## Credits\n\nnf-core/spatialxe is mainly developed by [Sameesh Kher](https://github.com/khersameesh24), [Dongze He](https://github.com/dongzehe), and [Florian Heyl](https://github.com/heylf).\n\nWe thank the following people for their extensive assistance in the development of this pipeline:\n\n- Tobias Krause\n- Kre\u0161imir Be\u0161tak (kbestak)\n- Matthias H\u00f6rtenhuber (mashehu)\n- Maxime Garcia (maxulysse)\n- K\u00fcbra Narc\u0131 (kubranarci)\n\n## Contributions and Support\n\nIf you would like to contribute to this pipeline, please see the [contributing guidelines](.github/CONTRIBUTING.md).\n\nFor further information or help, don't hesitate to get in touch on the [Slack `#spatialxe` channel](https://nfcore.slack.com/channels/spatialxe) (you can join with [this invite](https://nf-co.re/join/slack)).\n\n## Citations\n\n\n\nAn extensive list of references for the tools used by the pipeline can be found in the [`CITATIONS.md`](CITATIONS.md) file.\n\nYou can cite the `nf-core` publication as follows:\n\n> **The nf-core framework for community-curated bioinformatics pipelines.**\n>\n> Philip Ewels, Alexander Peltzer, Sven Fillinger, Harshil Patel, Johannes Alneberg, Andreas Wilm, Maxime Ulysse Garcia, Paolo Di Tommaso & Sven Nahnsen.\n>\n> _Nat Biotechnol._ 2020 Feb 13. doi: [10.1038/s41587-020-0439-x](https://dx.doi.org/10.1038/s41587-020-0439-x).\n", + "datePublished": "2026-05-27T11:36:27+00:00", + "description": "

\n \n \n \"nf-core/spatialaxe\"\n \n

\n\n[![Open in GitHub Codespaces](https://github.com/codespaces/badge.svg)](https://github.com/codespaces/new/nf-core/spatialaxe)\n[![GitHub Actions CI Status](https://github.com/nf-core/spatialaxe/actions/workflows/nf-test.yml/badge.svg)](https://github.com/nf-core/spatialaxe/actions/workflows/nf-test.yml)\n[![GitHub Actions Linting Status](https://github.com/nf-core/spatialaxe/actions/workflows/linting.yml/badge.svg)](https://github.com/nf-core/spatialaxe/actions/workflows/linting.yml)[![AWS CI](https://img.shields.io/badge/CI%20tests-full%20size-FF9900?labelColor=000000&logo=Amazon%20AWS)](https://nf-co.re/spatialaxe/results)[![Cite with Zenodo](http://img.shields.io/badge/DOI-10.5281/zenodo.XXXXXXX-1073c8?labelColor=000000)](https://doi.org/10.5281/zenodo.XXXXXXX)\n[![nf-test](https://img.shields.io/badge/unit_tests-nf--test-337ab7.svg)](https://www.nf-test.com)\n\n[![Nextflow](https://img.shields.io/badge/version-%E2%89%A525.04.0-green?style=flat&logo=nextflow&logoColor=white&color=%230DC09D&link=https%3A%2F%2Fnextflow.io)](https://www.nextflow.io/)\n[![nf-core template version](https://img.shields.io/badge/nf--core_template-3.4.1-green?style=flat&logo=nfcore&logoColor=white&color=%2324B064&link=https%3A%2F%2Fnf-co.re)](https://github.com/nf-core/tools/releases/tag/3.4.1)\n[![run with docker](https://img.shields.io/badge/run%20with-docker-0db7ed?labelColor=000000&logo=docker)](https://www.docker.com/)\n[![run with singularity](https://img.shields.io/badge/run%20with-singularity-1d355c.svg?labelColor=000000)](https://sylabs.io/docs/)\n[![Launch on Seqera Platform](https://img.shields.io/badge/Launch%20%F0%9F%9A%80-Seqera%20Platform-%234256e7)](https://cloud.seqera.io/launch?pipeline=https://github.com/nf-core/spatialaxe)\n\n[![Get help on Slack](http://img.shields.io/badge/slack-nf--core%20%23spatialaxe-4A154B?labelColor=000000&logo=slack)](https://nfcore.slack.com/channels/spatialaxe)[![Follow on Bluesky](https://img.shields.io/badge/bluesky-%40nf__core-1185fe?labelColor=000000&logo=bluesky)](https://bsky.app/profile/nf-co.re)[![Follow on Mastodon](https://img.shields.io/badge/mastodon-nf__core-6364ff?labelColor=FFFFFF&logo=mastodon)](https://mstdn.science/@nf_core)[![Watch on YouTube](http://img.shields.io/badge/youtube-nf--core-FF0000?labelColor=000000&logo=youtube)](https://www.youtube.com/c/nf-core)\n\n## Introduction\n\n**nf-core/spatialaxe** is a bioinformatics best-practice processing and quality control pipeline for Xenium (and soon Atera) data. The current plan for the pipeline implementation is shown in the metromap below. **The pipeline is under active developement and changes might occure frequently**.\n\n![nf-core/spatialaxe-metromap](docs/images/spatialaxe-metromap.png)\n\n> [!NOTE]\n> We are currently extending the pipeline for the [10x Atera system](https://www.10xgenomics.com/platforms/atera).\n\n## Tools supported\n\nThe pipeline supports the following tools:\n\n- Segmenation methods:\n - [Baysor](https://doi.org/10.1038/s41587-021-01044-w)\n - [Cellpose](https://doi.org/10.1038/s41592-020-01018-x)\n - [Xenium ranger (XR)](https://www.10xgenomics.com/support/software/xenium-ranger/latest)\n - [StarDist](https://doi.org/10.48550/arXiv.2203.02284)\n- Segmentation free methods:\n - [Ficture](https://doi.org/10.1038/s41592-024-02415-2)\n - [Baysor](https://doi.org/10.1038/s41587-021-01044-w)\n- Transcript assignment methods:\n - [Segger](https://doi.org/10.1101/2025.03.14.643160)\n - [Proseg](https://doi.org/10.1038/s41592-025-02697-0)\n- Utility methods:\n - [SpatialData](https://doi.org/10.1038/s41592-024-02212-x)\n - [Baysor](https://doi.org/10.1038/s41587-021-01044-w)\n- QC methods:\n - [MultiQC Xenium Extra Plugin](https://github.com/MultiQC/xenium-extra)\n - [OPT](https://github.com/JEFworks-Lab/off-target-probe-tracker)\n\n## Usage\n\nOn release, automated continuous integration tests run the pipeline on a full-sized dataset on the AWS cloud infrastructure. This ensures that the pipeline runs on AWS, has sensible resource allocation defaults set to run on real-world datasets, and permits the persistent storage of results to benchmark between pipeline releases and other analysis sources. The results obtained from the full-sized test can be viewed on the [nf-core website](https://nf-co.re/spatialaxe/results).\n\n> [!NOTE]\n> The pipeline does not support conda currently. We are working on it.\n\n## Quick Start\n\n`samplesheet.csv`:\n\n```csv\nsample,bundle,image\ntest_sample,/path/to/xenium-bundle,/path/to/morphology.ome.tif\n```\n\nNow, you can run the pipeline using:\n\n### Run image-based segmentation mode
\n\n`CELLPOSE -> BAYSOR -> XR-IMPORT_SEGMENTATION -> SPATIALDATA -> QC`\n\n```bash\nnextflow run nf-core/spatialaxe \\\n -profile \\\n --input samplesheet.csv \\\n --outdir \\\n --mode \n```\n\n### Run coordinate-based segmentation mode
\n\n`PROSEG -> PROSEG2BAYSOR -> XR-IMPORT_SEGMENTATION -> SPATIALDATA -> QC`\n\n```bash\nnextflow run nf-core/spatialaxe \\\n -profile \\\n --input samplesheet.csv \\\n --outdir \\\n --mode coordinate\n```\n\n### Run segfree mode
\n\n`BAYSOR_SEGFREE`\n\n```bash\nnextflow run nf-core/spatialaxe \\\n -profile \\\n --input samplesheet.csv \\\n --outdir \\\n --mode segfree\n```\n\n### Run preview mode
\n\n`BAYSOR_PREVIEW`\n\n```bash\nnextflow run nf-core/spatialaxe \\\n -profile \\\n --input samplesheet.csv \\\n --outdir \\\n --mode preview\n```\n\n### Run just the quality control
\n\n```bash\nnextflow run nf-core/spatialaxe \\\n -profile \\\n --input samplesheet.csv \\\n --outdir \\\n --mode qc\n```\n\n### Additional information\n\n> [!WARNING]\n> Please provide pipeline parameters via the CLI or Nextflow `-params-file` option. Custom config files including those provided by the `-c` Nextflow option can be used to provide any configuration _**except for parameters**_; see [docs](https://nf-co.re/docs/usage/getting_started/configuration#custom-configuration-files).\n\nFor more details and further functionality, please refer to the [usage documentation](https://nf-co.re/spatialaxe/usage) and the [parameter documentation](https://nf-co.re/spatialaxe/parameters).\n\n## Pipeline output\n\nTo see the results of an example test run with a full size dataset refer to the [results](https://nf-co.re/spatialaxe/results) tab on the nf-core website pipeline page.\nFor more details about the output files and reports, please refer to the\n[output documentation](https://nf-co.re/spatialaxe/output).\n\n## Runtime and resource estimations\n\n| Tool | Compute | Runtime (min / med / max) | Peak RSS (min / med / max) |\n| ------------------------- | ------- | ------------------------- | -------------------------- |\n| Cellpose | GPU | 1m / 4m / 1.4h | 10 GB / 26 GB / 554 GB |\n| Cellpose | CPU | 1.3h / 2.3h / 6.5h | 161 GB / 426 GB / 1115 GB |\n| StarDist | GPU | 1m / 4m / 7m | 5 GB / 12 GB / 18 GB |\n| StarDist | CPU | 5m / 6m / 7m | 18 GB / 18 GB / 18 GB |\n| Segger (create_dataset) | GPU | 2m / 9m / 31m | 1.7 GB / 14 GB / 50 GB |\n| Segger (create_dataset) | CPU | 13m / 21m / 46m | 13 GB / 19 GB / 49 GB |\n| Segger (train) | GPU | 10m / 43m / 2.9h | 30 GB / 33 GB / 60 GB |\n| Segger (predict) | GPU | 2m / 16m / 59m | 10 GB / 25 GB / 87 GB |\n| Baysor (whole-image) | CPU | 2m / 30m / 17h | 6 GB / 10 GB / 650 GB |\n| Baysor (tiled) | CPU | 1m / 18m / 13h | 0.2 GB / 34 GB / 530 GB |\n| Proseg | CPU | 1m / 18m / 6.8h | 279 MB / 3.8 GB / 136 GB |\n| XeniumRanger (resegment) | CPU | 18m / 39m / 3.7h | 28 GB / 54 GB / 60 GB |\n| XeniumRanger (import_seg) | CPU | 2m / 7m / 2.7h | 2.6 GB / 11 GB / 51 GB |\n| Ficture (preprocess) | CPU | 3m / 4m / 13m | 331 MB / 357 MB / 21 GB |\n\n- Cellpose GPU vs CPU: 35x faster on GPU (4m median vs 2.3h), 16x less memory (26 GB vs 426 GB)\n- Segger: Only tool that truly requires GPU for all 3 steps (create_dataset, train, predict)\n- StarDist: Very fast on CPU, GPU is not necessary to run its default model\n\n## Credits\n\nnf-core/spatialaxe is mainly developed by [Sameesh Kher](https://github.com/khersameesh24), [Dongze He](https://github.com/dongzehe), and [Florian Heyl](https://github.com/heylf).\n\nWe thank the following people for their extensive assistance in the development of this pipeline:\n\n- Tobias Krause\n- Kre\u0161imir Be\u0161tak (kbestak)\n- Matthias H\u00f6rtenhuber (mashehu)\n- Maxime Garcia (maxulysse)\n- K\u00fcbra Narc\u0131 (kubranarci)\n\n## Contributions and Support\n\nIf you would like to contribute to this pipeline, please see the [contributing guidelines](.github/CONTRIBUTING.md).\n\nFor further information or help, don't hesitate to get in touch on the [Slack `#spatialaxe` channel](https://nfcore.slack.com/channels/spatialaxe) (you can join with [this invite](https://nf-co.re/join/slack)).\n\n## Citations\n\n\n\nAn extensive list of references for the tools used by the pipeline can be found in the [`CITATIONS.md`](CITATIONS.md) file.\n\nYou can cite the `nf-core` publication as follows:\n\n> **The nf-core framework for community-curated bioinformatics pipelines.**\n>\n> Philip Ewels, Alexander Peltzer, Sven Fillinger, Harshil Patel, Johannes Alneberg, Andreas Wilm, Maxime Ulysse Garcia, Paolo Di Tommaso & Sven Nahnsen.\n>\n> _Nat Biotechnol._ 2020 Feb 13. doi: [10.1038/s41587-020-0439-x](https://dx.doi.org/10.1038/s41587-020-0439-x).\n", "hasPart": [ { "@id": "main.nf" @@ -31,9 +31,6 @@ { "@id": "assets/" }, - { - "@id": "bin/" - }, { "@id": "conf/" }, @@ -46,9 +43,6 @@ { "@id": "modules/" }, - { - "@id": "modules/local/" - }, { "@id": "modules/nf-core/" }, @@ -98,17 +92,17 @@ "@id": ".prettierignore" } ], - "isBasedOn": "https://github.com/nf-core/spatialxe", + "isBasedOn": "https://github.com/nf-core/spatialaxe", "license": "MIT", "mainEntity": { "@id": "main.nf" }, "mentions": [ { - "@id": "#52641598-65b9-4e1a-96ba-d6c73f464012" + "@id": "#93095c81-90d0-4005-8fe8-257133b523b7" } ], - "name": "nf-core/spatialxe" + "name": "nf-core/spatialaxe" }, { "@id": "ro-crate-metadata.json", @@ -118,7 +112,7 @@ }, "conformsTo": [ { - "@id": "https://w3id.org/ro/crate/1.1" + "@id": "https://w3id.org/ro/crate/1.2" }, { "@id": "https://w3id.org/workflowhub/workflow-ro-crate/1.0" @@ -132,13 +126,8 @@ "SoftwareSourceCode", "ComputationalWorkflow" ], - "creator": [ - { - "@id": "https://orcid.org/0009-0008-2420-6464" - } - ], "dateCreated": "", - "dateModified": "2026-04-28T17:09:48Z", + "dateModified": "2026-05-27T13:36:27Z", "dct:conformsTo": "https://bioschemas.org/profiles/ComputationalWorkflow/1.0-RELEASE/", "keywords": [ "nf-core", @@ -154,13 +143,8 @@ "license": [ "MIT" ], - "maintainer": [ - { - "@id": "https://orcid.org/0009-0008-2420-6464" - } - ], "name": [ - "nf-core/spatialxe" + "nf-core/spatialaxe" ], "programmingLanguage": { "@id": "https://w3id.org/workflowhub/workflow-ro-crate#nextflow" @@ -169,8 +153,8 @@ "@id": "https://nf-co.re/" }, "url": [ - "https://github.com/nf-core/spatialxe", - "https://nf-co.re/spatialxe/1.0.0/" + "https://github.com/nf-core/spatialaxe", + "https://nf-co.re/spatialaxe/1.0.0/" ], "version": [ "1.0.0" @@ -189,23 +173,23 @@ "version": "!>=25.04.0" }, { - "@id": "#52641598-65b9-4e1a-96ba-d6c73f464012", + "@id": "#93095c81-90d0-4005-8fe8-257133b523b7", "@type": "TestSuite", "instance": [ { - "@id": "#8f995e93-3115-404e-8f6b-5d8a5db77b5e" + "@id": "#662205d5-7986-4a2b-99ae-86639b5bf728" } ], "mainEntity": { "@id": "main.nf" }, - "name": "Test suite for nf-core/spatialxe" + "name": "Test suite for nf-core/spatialaxe" }, { - "@id": "#8f995e93-3115-404e-8f6b-5d8a5db77b5e", + "@id": "#662205d5-7986-4a2b-99ae-86639b5bf728", "@type": "TestInstance", - "name": "GitHub Actions workflow for testing nf-core/spatialxe", - "resource": "repos/nf-core/spatialxe/actions/workflows/nf-test.yml", + "name": "GitHub Actions workflow for testing nf-core/spatialaxe", + "resource": "repos/nf-core/spatialaxe/actions/workflows/nf-test.yml", "runsOn": { "@id": "https://w3id.org/ro/terms/test#GithubService" }, @@ -224,11 +208,6 @@ "@type": "Dataset", "description": "Additional files" }, - { - "@id": "bin/", - "@type": "Dataset", - "description": "Scripts that must be callable from a pipeline process" - }, { "@id": "conf/", "@type": "Dataset", @@ -249,11 +228,6 @@ "@type": "Dataset", "description": "Modules used by the pipeline" }, - { - "@id": "modules/local/", - "@type": "Dataset", - "description": "Pipeline-specific modules" - }, { "@id": "modules/nf-core/", "@type": "Dataset", @@ -339,12 +313,6 @@ "@type": "Organization", "name": "nf-core", "url": "https://nf-co.re/" - }, - { - "@id": "https://orcid.org/0009-0008-2420-6464", - "@type": "Person", - "email": "khersameesh24@gmail.com", - "name": "Sameesh Kher" } ] } \ No newline at end of file diff --git a/subworkflows/local/baysor_run_transcripts_parquet/main.nf b/subworkflows/local/baysor_run_transcripts_parquet/main.nf index 5b221247..aff27051 100644 --- a/subworkflows/local/baysor_run_transcripts_parquet/main.nf +++ b/subworkflows/local/baysor_run_transcripts_parquet/main.nf @@ -103,7 +103,7 @@ workflow BAYSOR_RUN_TRANSCRIPTS_PARQUET { XENIUM_PATCH_STITCH ( RECONSTRUCT_PATCHES.out.patches_dir ) // Step 6: xeniumranger import-segmentation (tiled) - // spatialxe signature: meta, bundle, transcript_assignment, viz_polygons, nuclei, cells, coordinate_transform, units + // spatialaxe signature: meta, bundle, transcript_assignment, viz_polygons, nuclei, cells, coordinate_transform, units ch_xr = ch_bundle_path .combine(XENIUM_PATCH_STITCH.out.xr_polygons_transcript, by: 0) .map { @@ -146,7 +146,7 @@ workflow BAYSOR_RUN_TRANSCRIPTS_PARQUET { BAYSOR_RUN(ch_baysor_input) // xeniumranger import-segmentation (non-tiled) - // spatialxe signature: meta, bundle, transcript_assignment, viz_polygons, nuclei, cells, coordinate_transform, units + // spatialaxe signature: meta, bundle, transcript_assignment, viz_polygons, nuclei, cells, coordinate_transform, units ch_xr = ch_bundle_path .combine(BAYSOR_RUN.out.segmentation, by: 0) .map { meta, bundle, segmentation_csv, polygons2d -> diff --git a/subworkflows/local/segger_create_train_predict/main.nf b/subworkflows/local/segger_create_train_predict/main.nf index e2486150..3f832d61 100644 --- a/subworkflows/local/segger_create_train_predict/main.nf +++ b/subworkflows/local/segger_create_train_predict/main.nf @@ -16,7 +16,7 @@ workflow SEGGER_CREATE_TRAIN_PREDICT { main: - // Note: spatialxe uses "pixels" but per 10x docs, transcript-based segmentation + // Note: spatialaxe uses "pixels" but per 10x docs, transcript-based segmentation // (like Baysor/Segger) must use "microns" since Xenium coordinates are in microns ch_coordinate_space = channel.value("microns") diff --git a/subworkflows/local/spatialdata_write_meta_merge/main.nf b/subworkflows/local/spatialdata_write_meta_merge/main.nf index 7a407c88..24ce9e90 100644 --- a/subworkflows/local/spatialdata_write_meta_merge/main.nf +++ b/subworkflows/local/spatialdata_write_meta_merge/main.nf @@ -1,5 +1,5 @@ // -// generate spatialdata object from the spatialxe layers +// generate spatialdata object from the spatialaxe layers // include { SPATIALDATA_META } from '../../../modules/local/spatialdata/meta/main' diff --git a/subworkflows/local/utils_nfcore_spatialxe_pipeline/main.nf b/subworkflows/local/utils_nfcore_spatialaxe_pipeline/main.nf similarity index 97% rename from subworkflows/local/utils_nfcore_spatialxe_pipeline/main.nf rename to subworkflows/local/utils_nfcore_spatialaxe_pipeline/main.nf index 5bcb88d8..801174e2 100644 --- a/subworkflows/local/utils_nfcore_spatialxe_pipeline/main.nf +++ b/subworkflows/local/utils_nfcore_spatialaxe_pipeline/main.nf @@ -1,5 +1,5 @@ // -// Subworkflow with functionality specific to the nf-core/spatialxe pipeline +// Subworkflow with functionality specific to the nf-core/spatialaxe pipeline // /* @@ -70,7 +70,7 @@ workflow PIPELINE_INITIALISATION { \033[0;34m |\\ | |__ __ / ` / \\ |__) |__ \033[0;33m} {\033[0m \033[0;34m | \\| | \\__, \\__/ | \\ |___ \033[0;32m\\`-._,-`-,\033[0m \033[0;32m`._,._,\'\033[0m -\033[0;35m nf-core/spatialxe ${workflow.manifest.version}\033[0m +\033[0;35m nf-core/spatialaxe ${workflow.manifest.version}\033[0m -\033[2m----------------------------------------------------\033[0m- """ after_text = """${workflow.manifest.doi ? "\n* The pipeline\n" : ""}${workflow.manifest.doi.tokenize(",").collect { " https://doi.org/${it.trim().replace('https://doi.org/', '')}" }.join("\n")}${workflow.manifest.doi ? "\n" : ""} @@ -78,7 +78,7 @@ workflow PIPELINE_INITIALISATION { https://doi.org/10.1038/s41587-020-0439-x * Software dependencies - https://github.com/nf-core/spatialxe/blob/master/CITATIONS.md + https://github.com/nf-core/spatialaxe/blob/master/CITATIONS.md """ command = "nextflow run ${workflow.manifest.name} -profile --input samplesheet.csv --mode --outdir " @@ -142,7 +142,7 @@ workflow PIPELINE_INITIALISATION { // Xenium bundle file-presence validation now runs in the main workflow - // (workflows/spatialxe.nf) AFTER UNTAR staging, so it works uniformly for + // (workflows/spatialaxe.nf) AFTER UNTAR staging, so it works uniformly for // both directory inputs and tarball inputs. emit: @@ -223,7 +223,7 @@ def validateInputParameters( // check if conda profile is provided if (workflow.profile.contains('conda')) { - error("❌ Error: `nf-core/spatialxe` does not support running the pipeline with profile: conda ") + error("❌ Error: `nf-core/spatialaxe` does not support running the pipeline with profile: conda ") } // check if the samplesheet provided with the test config is assets/samplesheet.csv diff --git a/tests/coordinate_mode.nf.test b/tests/coordinate_mode.nf.test index 51623327..e0ff2ac4 100644 --- a/tests/coordinate_mode.nf.test +++ b/tests/coordinate_mode.nf.test @@ -24,7 +24,7 @@ nextflow_pipeline { { assert workflow.success}, { assert snapshot( // pipeline versions.yml file for multiqc from which Nextflow version is removed because we test pipelines on multiple Nextflow versions - removeNextflowVersion("$outputDir/pipeline_info/nf_core_spatialxe_software_mqc_versions.yml"), + removeNextflowVersion("$outputDir/pipeline_info/nf_core_spatialaxe_software_mqc_versions.yml"), // All stable path name, with a relative path stable_name, // All files with stable contents diff --git a/tests/coordinate_mode.nf.test.snap b/tests/coordinate_mode.nf.test.snap index acc869eb..4967372e 100644 --- a/tests/coordinate_mode.nf.test.snap +++ b/tests/coordinate_mode.nf.test.snap @@ -24,7 +24,7 @@ "untar": 1.34 }, "Workflow": { - "nf-core/spatialxe": "v1.0.0" + "nf-core/spatialaxe": "v1.0.0" }, "XENIUMRANGER_IMPORT_SEGMENTATION": { "xeniumranger": "4.0.1.1" @@ -103,7 +103,7 @@ "coordinate/xeniumranger/import_segementation/test_run", "coordinate/xeniumranger/import_segementation/test_run/experiment.xenium", "pipeline_info", - "pipeline_info/nf_core_spatialxe_software_mqc_versions.yml" + "pipeline_info/nf_core_spatialaxe_software_mqc_versions.yml" ], [ ".stub:md5,d41d8cd98f00b204e9800998ecf8427e", diff --git a/tests/default.nf.test b/tests/default.nf.test index 1e6301e7..84c71fc2 100644 --- a/tests/default.nf.test +++ b/tests/default.nf.test @@ -24,7 +24,7 @@ nextflow_pipeline { { assert workflow.success}, { assert snapshot( // pipeline versions.yml file for multiqc from which Nextflow version is removed because we test pipelines on multiple Nextflow versions - removeNextflowVersion("$outputDir/pipeline_info/nf_core_spatialxe_software_mqc_versions.yml"), + removeNextflowVersion("$outputDir/pipeline_info/nf_core_spatialaxe_software_mqc_versions.yml"), // All stable path name, with a relative path stable_name, // All files with stable contents diff --git a/tests/default.nf.test.snap b/tests/default.nf.test.snap index 7fe78c5f..d5946632 100644 --- a/tests/default.nf.test.snap +++ b/tests/default.nf.test.snap @@ -24,7 +24,7 @@ "untar": 1.34 }, "Workflow": { - "nf-core/spatialxe": "v1.0.0" + "nf-core/spatialaxe": "v1.0.0" }, "XENIUMRANGER_IMPORT_SEGMENTATION": { "xeniumranger": "4.0.1.1" @@ -103,7 +103,7 @@ "coordinate/xeniumranger/import_segementation/test_run", "coordinate/xeniumranger/import_segementation/test_run/experiment.xenium", "pipeline_info", - "pipeline_info/nf_core_spatialxe_software_mqc_versions.yml" + "pipeline_info/nf_core_spatialaxe_software_mqc_versions.yml" ], [ ".stub:md5,d41d8cd98f00b204e9800998ecf8427e", diff --git a/tests/image_mode.nf.test b/tests/image_mode.nf.test index 000faeb9..4a594afa 100644 --- a/tests/image_mode.nf.test +++ b/tests/image_mode.nf.test @@ -24,7 +24,7 @@ nextflow_pipeline { { assert workflow.success}, { assert snapshot( // pipeline versions.yml file for multiqc from which Nextflow version is removed because we test pipelines on multiple Nextflow versions - removeNextflowVersion("$outputDir/pipeline_info/nf_core_spatialxe_software_mqc_versions.yml"), + removeNextflowVersion("$outputDir/pipeline_info/nf_core_spatialaxe_software_mqc_versions.yml"), // All stable path name, with a relative path stable_name, // All files with stable contents diff --git a/tests/image_mode.nf.test.snap b/tests/image_mode.nf.test.snap index b08d4e6f..4b2c5d3a 100644 --- a/tests/image_mode.nf.test.snap +++ b/tests/image_mode.nf.test.snap @@ -30,7 +30,7 @@ "untar": 1.34 }, "Workflow": { - "nf-core/spatialxe": "v1.0.0" + "nf-core/spatialaxe": "v1.0.0" }, "XENIUMRANGER_IMPORT_SEGMENTATION": { "xeniumranger": "4.0.1.1" @@ -115,7 +115,7 @@ "image/utility/resize_tif/test_run", "image/utility/resize_tif/test_run/resized_morphology_focus_0000.ome_cp_masks.tif.tif", "pipeline_info", - "pipeline_info/nf_core_spatialxe_software_mqc_versions.yml" + "pipeline_info/nf_core_spatialaxe_software_mqc_versions.yml" ], [ "experiment.xenium:md5,d41d8cd98f00b204e9800998ecf8427e", diff --git a/tests/nextflow.config b/tests/nextflow.config index eff6fcbb..2c1bfd32 100644 --- a/tests/nextflow.config +++ b/tests/nextflow.config @@ -7,7 +7,7 @@ // Or any resources requirements params { modules_testdata_base_path = 'https://raw.githubusercontent.com/nf-core/test-datasets/modules/data/' - pipelines_testdata_base_path = 'https://raw.githubusercontent.com/nf-core/test-datasets/refs/heads/spatialxe' + pipelines_testdata_base_path = 'https://raw.githubusercontent.com/nf-core/test-datasets/refs/heads/spatialaxe' } aws.client.anonymous = true // fixes S3 access issues on self-hosted runners diff --git a/tests/preview_mode.nf.test b/tests/preview_mode.nf.test index fe206319..5a423490 100644 --- a/tests/preview_mode.nf.test +++ b/tests/preview_mode.nf.test @@ -24,7 +24,7 @@ nextflow_pipeline { { assert workflow.success}, { assert snapshot( // pipeline versions.yml file for multiqc from which Nextflow version is removed because we test pipelines on multiple Nextflow versions - removeNextflowVersion("$outputDir/pipeline_info/nf_core_spatialxe_software_mqc_versions.yml"), + removeNextflowVersion("$outputDir/pipeline_info/nf_core_spatialaxe_software_mqc_versions.yml"), // All stable path name, with a relative path stable_name, // All files with stable contents diff --git a/tests/preview_mode.nf.test.snap b/tests/preview_mode.nf.test.snap index 16fad219..03a826e2 100644 --- a/tests/preview_mode.nf.test.snap +++ b/tests/preview_mode.nf.test.snap @@ -18,12 +18,12 @@ "untar": 1.34 }, "Workflow": { - "nf-core/spatialxe": "v1.0.0" + "nf-core/spatialaxe": "v1.0.0" } }, [ "pipeline_info", - "pipeline_info/nf_core_spatialxe_software_mqc_versions.yml", + "pipeline_info/nf_core_spatialaxe_software_mqc_versions.yml", "preview", "preview/baysor", "preview/baysor/create_dataset", diff --git a/tests/segfree_mode.nf.test b/tests/segfree_mode.nf.test index 2319b6e2..854b17d5 100644 --- a/tests/segfree_mode.nf.test +++ b/tests/segfree_mode.nf.test @@ -24,7 +24,7 @@ nextflow_pipeline { { assert workflow.success}, { assert snapshot( // pipeline versions.yml file for multiqc from which Nextflow version is removed because we test pipelines on multiple Nextflow versions - removeNextflowVersion("$outputDir/pipeline_info/nf_core_spatialxe_software_mqc_versions.yml"), + removeNextflowVersion("$outputDir/pipeline_info/nf_core_spatialaxe_software_mqc_versions.yml"), // All stable path name, with a relative path stable_name, // All files with stable contents diff --git a/tests/segfree_mode.nf.test.snap b/tests/segfree_mode.nf.test.snap index 2e9e2edb..af848bc6 100644 --- a/tests/segfree_mode.nf.test.snap +++ b/tests/segfree_mode.nf.test.snap @@ -12,12 +12,12 @@ "untar": 1.34 }, "Workflow": { - "nf-core/spatialxe": "v1.0.0" + "nf-core/spatialaxe": "v1.0.0" } }, [ "pipeline_info", - "pipeline_info/nf_core_spatialxe_software_mqc_versions.yml", + "pipeline_info/nf_core_spatialaxe_software_mqc_versions.yml", "segfree", "segfree/baysor", "segfree/baysor/preprocess", diff --git a/workflows/spatialxe.nf b/workflows/spatialaxe.nf similarity index 97% rename from workflows/spatialxe.nf rename to workflows/spatialaxe.nf index be6b7cf1..8e11f058 100644 --- a/workflows/spatialxe.nf +++ b/workflows/spatialaxe.nf @@ -12,7 +12,7 @@ include { paramsSummaryMultiqc } from '../subworkflo // nf-core functionality include { softwareVersionsToYAML } from '../subworkflows/nf-core/utils_nfcore_pipeline' -include { methodsDescriptionText } from '../subworkflows/local/utils_nfcore_spatialxe_pipeline' +include { methodsDescriptionText } from '../subworkflows/local/utils_nfcore_spatialaxe_pipeline' include { paramsSummaryMap } from 'plugin/nf-schema' // nf-core modules @@ -52,7 +52,7 @@ include { OPT_FLIP_TRACK_STAT } from '../subworkflo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ -workflow SPATIALXE { +workflow SPATIALAXE { take: ch_samplesheet // channel: samplesheet read in from --input alignment_csv @@ -99,7 +99,7 @@ workflow SPATIALXE { /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - SPATIALXE - GENERATE INPUT CHANNELS + SPATIALAXE - GENERATE INPUT CHANNELS ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ @@ -130,7 +130,7 @@ workflow SPATIALXE { /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - SPATIALXE - DATA STAGING + SPATIALAXE - DATA STAGING ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ @@ -354,7 +354,7 @@ workflow SPATIALXE { /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - SPATIALXE - RELABEL GENES + SPATIALAXE - RELABEL GENES ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ @@ -373,7 +373,7 @@ workflow SPATIALXE { /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - SPATIALXE - DATA PREVIEW + SPATIALAXE - DATA PREVIEW ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ // run baysor preview if `generate_preview ` is true @@ -388,7 +388,7 @@ workflow SPATIALXE { /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - SPATIALXE - XENIUMRANGER LAYER + SPATIALAXE - XENIUMRANGER LAYER ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ // run only xeniumranger import segmentation with changes xr specific params @@ -408,7 +408,7 @@ workflow SPATIALXE { /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - SPATIALXE - IMAGE-BASED SEGMENTATION LAYER + SPATIALAXE - IMAGE-BASED SEGMENTATION LAYER ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ if (mode == 'image') { @@ -500,7 +500,7 @@ workflow SPATIALXE { /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - SPATIALXE - TRANSCRIPT-BASED SEGMENTATION LAYER + SPATIALAXE - TRANSCRIPT-BASED SEGMENTATION LAYER ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ if (mode == 'coordinate') { @@ -573,7 +573,7 @@ workflow SPATIALXE { /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - SPATIALXE - SPATIALDATA / METADATA LAYER + SPATIALAXE - SPATIALDATA / METADATA LAYER ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ @@ -592,7 +592,7 @@ workflow SPATIALXE { /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - SPATIALXE - QC LAYER + SPATIALAXE - QC LAYER ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ @@ -613,7 +613,7 @@ workflow SPATIALXE { /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - SPATIALXE - SEGMENTATION-FREE LAYER + SPATIALAXE - SEGMENTATION-FREE LAYER ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ if (mode == 'segfree') { @@ -647,7 +647,7 @@ workflow SPATIALXE { /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - SPATIALXE - COLLATE & SAVE SOFTWARE VERSIONS + SPATIALAXE - COLLATE & SAVE SOFTWARE VERSIONS ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ // Collect versions published via topic channels (local modules) @@ -659,7 +659,7 @@ workflow SPATIALXE { softwareVersionsToYAML(ch_versions.mix(ch_topic_versions)) .collectFile( storeDir: "${outdir}/pipeline_info", - name: 'nf_core_' + 'spatialxe_software_' + 'mqc_' + 'versions.yml', + name: 'nf_core_' + 'spatialaxe_software_' + 'mqc_' + 'versions.yml', sort: true, newLine: true, ) @@ -667,7 +667,7 @@ workflow SPATIALXE { /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - SPATIALXE - MultiQC + SPATIALAXE - MultiQC ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ ch_multiqc_config = channel.fromPath(