From af284d2fed5a65232b56f83e482c7dd4000ab041 Mon Sep 17 00:00:00 2001 From: Meghann Kirk Date: Wed, 21 Jan 2026 09:36:10 -0600 Subject: [PATCH 01/17] feat: account login --- .github/copilot-instructions.md | 47 +++++++++++++++++++ .../2.accounts-and-billing.md | 6 ++- 2 files changed, 51 insertions(+), 2 deletions(-) create mode 100644 .github/copilot-instructions.md diff --git a/.github/copilot-instructions.md b/.github/copilot-instructions.md new file mode 100644 index 00000000..e8e2a5a7 --- /dev/null +++ b/.github/copilot-instructions.md @@ -0,0 +1,47 @@ + +# St. Jude Cloud Docs — AI assistant instructions + +Purpose: help code-writing agents be immediately productive in this Nuxt + @nuxt/content documentation site. + +- Quick start commands: + - `pnpm install` — install deps (pnpm@9.x required). + - `pnpm dev` — run local Nuxt dev server. + - `pnpm build` / `pnpm preview` — build and preview production output. + +- Architecture (high level): + - This is a Nuxt 3 site using `@nuxt/content` for markdown-driven pages and `@nuxt/ui-pro` for UI components. + - Content lives in the `content/` tree; navigation is configured via `_dir.yml` files and individual `.md` files. + - Route rendering: the dynamic page `app/pages/[...slug].vue` loads markdown via `queryContent(route.path).findOne()`; modify that file only if you change page resolution behaviour. + - Search API: `server/api/search.json.get.ts` exposes server-side content queries using `serverQueryContent`. + +- Key files to reference when editing behaviour or layout: + - Project entry & scripts: [README.md](README.md), [package.json](package.json#L1-L50) + - Nuxt config & routing rules: [nuxt.config.ts](nuxt.config.ts) + - Page rendering: [app/pages/[...slug].vue](app/pages/[...slug].vue) + - Layout/navigation: [app/layouts/docs.vue](app/layouts/docs.vue) + - App-level config (TOC, edit links): [app/app.config.ts](app/app.config.ts) + - Server-side content API: [server/api/search.json.get.ts](server/api/search.json.get.ts) + +- Project-specific conventions and patterns: + - Content-first: add, reorder, and annotate pages via files in `content/`. Use `_dir.yml` to control navigation structure. + - One sentence per Markdown line is enforced in style guidance — keep that when updating docs. + - `toc.bottom.edit` in `app/app.config.ts` is used to render an "Edit this page" link; the front-end reads `_file` from content entries. + - Use conventional commits (project uses `semantic-release`); prefer `git cz` / Commitizen for commits to trigger correct semantic releases. + - Husky hooks are enabled; CI expects linting/typechecks in pipelines defined in repo tooling. + +- Integration points & notable plugins: + - `nuxt-3-intercom` (Intercom integration), `nuxt-og-image` (OG images), `@nuxt/image` and custom `sjc-icons` collection. + - `pnpm` overrides shim `sharp` version in `package.json` — be mindful on native build failures on Apple Silicon. + +- When changing UI or content rendering: + - Prefer changes in `app/components` and `app/layouts` unless you must alter Nuxt internals. + - To alter how markdown is converted, update `nuxt.config.ts` → `content` or `hooks` rather than editing generated output. + +- Files to check when debugging build/runtime issues: + - `package.json` scripts, `nuxt.config.ts`, `app/pages/[...slug].vue`, `server/api/*`, and `deployment/*` for environment-specific templates. + +- Small examples: + - To find the search endpoint implementation, see `server/api/search.json.get.ts` (uses `serverQueryContent`). + - To change the left navigation tree source, edit `app/layouts/docs.vue` which calls `useContentHelpers()` and maps `_dir.yml` navigation. + +If anything here is unclear or you want more detail on a specific area (CI, deployment templates, or content conventions), say which section to expand. diff --git a/content/3.genomics-platform/1.getting-started/2.accounts-and-billing.md b/content/3.genomics-platform/1.getting-started/2.accounts-and-billing.md index 3bf5ebb2..2e0065e7 100644 --- a/content/3.genomics-platform/1.getting-started/2.accounts-and-billing.md +++ b/content/3.genomics-platform/1.getting-started/2.accounts-and-billing.md @@ -17,7 +17,6 @@ You will then be asked to select a method to authenticate your credentials. Select your preferred authentication method to proceed. ::callout{icon="i-heroicons-document-text-solid" color="blue"} - **Linking Accounts** Users who have an existing DNAnexus account must use the St. Jude Cloud account creation and login steps above to access St. Jude Cloud data. Once you have created an account through St. Jude Cloud your DNAnexus account and St. Jude Cloud account will be linked going forward. @@ -28,7 +27,7 @@ Once you have created an account through St. Jude Cloud your DNAnexus account an If you are a St. Jude employee, go to the [Bioinformatics Self Service page](https://sjcrh.sharepoint.com/sites/computational-biology/SitePages/Bioinformatics-Self-Service-on-St.-Jude-Cloud.aspx) on the Intranet for information on how to set up your billing account. If you are not a St. Jude employee, you will need to contact DNAnexus directly to setup billing. -To complete DNAnexus billing account setup, email DNAnexus support [support@dnanexus.com](support@dnanexus.com). +To complete DNAnexus billing account setup, email DNAnexus support (support@dnanexus.com). DNAnexus Support will reach out directly once the email is received. Use the template below, adding in the required information to request billing assistance. Your DNAnexus account ID and email can be found listed on your User Account page on DNAnexus. @@ -47,12 +46,15 @@ Your DNAnexus account ID and email can be found listed on your User Account page **Note** DNAnexus Support will reach out directly once the email has been submitted. :: + + If your DNAnexus account is already set up and you would like to access your billing information: 1. Login to your St. Jude Cloud account. 2. Click on your profile in the top right corner of the navigation and select 'DNAnexus Profile'. 3. Click on 'Billing Account' from the tabs listed just under the navigation bar. + ::callout{icon="i-heroicons-document-text-solid" color="blue"} **Cost** Data from St. Jude Cloud is available for free via the DNAnexus platform, but to submit a request and access the data, your DNAnexus billing account must be setup, which includes providing a source of funds. For a more detailed explanation of what is freely available and what actions would incur costs, [see our FAQ](/genomics-platform/getting-started/faq). From 2e256092fbadc7d75159f6db01d8ceeae5b4a359 Mon Sep 17 00:00:00 2001 From: Meghann Kirk Date: Wed, 21 Jan 2026 09:53:15 -0600 Subject: [PATCH 02/17] feat: format correction --- .github/copilot-instructions.md | 47 ------------------- .../2.accounts-and-billing.md | 14 ++++-- 2 files changed, 10 insertions(+), 51 deletions(-) delete mode 100644 .github/copilot-instructions.md diff --git a/.github/copilot-instructions.md b/.github/copilot-instructions.md deleted file mode 100644 index e8e2a5a7..00000000 --- a/.github/copilot-instructions.md +++ /dev/null @@ -1,47 +0,0 @@ - -# St. Jude Cloud Docs — AI assistant instructions - -Purpose: help code-writing agents be immediately productive in this Nuxt + @nuxt/content documentation site. - -- Quick start commands: - - `pnpm install` — install deps (pnpm@9.x required). - - `pnpm dev` — run local Nuxt dev server. - - `pnpm build` / `pnpm preview` — build and preview production output. - -- Architecture (high level): - - This is a Nuxt 3 site using `@nuxt/content` for markdown-driven pages and `@nuxt/ui-pro` for UI components. - - Content lives in the `content/` tree; navigation is configured via `_dir.yml` files and individual `.md` files. - - Route rendering: the dynamic page `app/pages/[...slug].vue` loads markdown via `queryContent(route.path).findOne()`; modify that file only if you change page resolution behaviour. - - Search API: `server/api/search.json.get.ts` exposes server-side content queries using `serverQueryContent`. - -- Key files to reference when editing behaviour or layout: - - Project entry & scripts: [README.md](README.md), [package.json](package.json#L1-L50) - - Nuxt config & routing rules: [nuxt.config.ts](nuxt.config.ts) - - Page rendering: [app/pages/[...slug].vue](app/pages/[...slug].vue) - - Layout/navigation: [app/layouts/docs.vue](app/layouts/docs.vue) - - App-level config (TOC, edit links): [app/app.config.ts](app/app.config.ts) - - Server-side content API: [server/api/search.json.get.ts](server/api/search.json.get.ts) - -- Project-specific conventions and patterns: - - Content-first: add, reorder, and annotate pages via files in `content/`. Use `_dir.yml` to control navigation structure. - - One sentence per Markdown line is enforced in style guidance — keep that when updating docs. - - `toc.bottom.edit` in `app/app.config.ts` is used to render an "Edit this page" link; the front-end reads `_file` from content entries. - - Use conventional commits (project uses `semantic-release`); prefer `git cz` / Commitizen for commits to trigger correct semantic releases. - - Husky hooks are enabled; CI expects linting/typechecks in pipelines defined in repo tooling. - -- Integration points & notable plugins: - - `nuxt-3-intercom` (Intercom integration), `nuxt-og-image` (OG images), `@nuxt/image` and custom `sjc-icons` collection. - - `pnpm` overrides shim `sharp` version in `package.json` — be mindful on native build failures on Apple Silicon. - -- When changing UI or content rendering: - - Prefer changes in `app/components` and `app/layouts` unless you must alter Nuxt internals. - - To alter how markdown is converted, update `nuxt.config.ts` → `content` or `hooks` rather than editing generated output. - -- Files to check when debugging build/runtime issues: - - `package.json` scripts, `nuxt.config.ts`, `app/pages/[...slug].vue`, `server/api/*`, and `deployment/*` for environment-specific templates. - -- Small examples: - - To find the search endpoint implementation, see `server/api/search.json.get.ts` (uses `serverQueryContent`). - - To change the left navigation tree source, edit `app/layouts/docs.vue` which calls `useContentHelpers()` and maps `_dir.yml` navigation. - -If anything here is unclear or you want more detail on a specific area (CI, deployment templates, or content conventions), say which section to expand. diff --git a/content/3.genomics-platform/1.getting-started/2.accounts-and-billing.md b/content/3.genomics-platform/1.getting-started/2.accounts-and-billing.md index 2e0065e7..f2c63280 100644 --- a/content/3.genomics-platform/1.getting-started/2.accounts-and-billing.md +++ b/content/3.genomics-platform/1.getting-started/2.accounts-and-billing.md @@ -5,9 +5,14 @@ description: Information on account creation and billing setup. St. Jude Cloud is built on top of [DNAnexus](https://www.dnanexus.com/), a data-analysis and management platform that specializes in the field of bioinformatics. All of our account management is shared between St. Jude Cloud and DNAnexus. +<<<<<<< HEAD ## Creating a St. Jude Cloud Account To create an account, simply navigate to [Genomics Platform](https://platform.stjude.cloud) and then select “Log In.” +======= +### Creating a St. Jude Cloud Account +To create an account, simply choose Genomics Platform on [the St. Jude Cloud homepage](https://stjude.cloud/) and then select “Log In.” +>>>>>>> c507e03 (feat: format correction) You will be presented with several options to choose from to setup up your account credentials. If you are a St. Jude employee, choose the St. Jude login option and use your St. Jude credentials for account creation. @@ -17,13 +22,18 @@ You will then be asked to select a method to authenticate your credentials. Select your preferred authentication method to proceed. ::callout{icon="i-heroicons-document-text-solid" color="blue"} + **Linking Accounts** Users who have an existing DNAnexus account must use the St. Jude Cloud account creation and login steps above to access St. Jude Cloud data. Once you have created an account through St. Jude Cloud your DNAnexus account and St. Jude Cloud account will be linked going forward. :: +<<<<<<< HEAD ## Billing Setup +======= +### Billing Setup +>>>>>>> c507e03 (feat: format correction) If you are a St. Jude employee, go to the [Bioinformatics Self Service page](https://sjcrh.sharepoint.com/sites/computational-biology/SitePages/Bioinformatics-Self-Service-on-St.-Jude-Cloud.aspx) on the Intranet for information on how to set up your billing account. If you are not a St. Jude employee, you will need to contact DNAnexus directly to setup billing. @@ -46,15 +56,11 @@ Your DNAnexus account ID and email can be found listed on your User Account page **Note** DNAnexus Support will reach out directly once the email has been submitted. :: - - If your DNAnexus account is already set up and you would like to access your billing information: 1. Login to your St. Jude Cloud account. 2. Click on your profile in the top right corner of the navigation and select 'DNAnexus Profile'. 3. Click on 'Billing Account' from the tabs listed just under the navigation bar. - - ::callout{icon="i-heroicons-document-text-solid" color="blue"} **Cost** Data from St. Jude Cloud is available for free via the DNAnexus platform, but to submit a request and access the data, your DNAnexus billing account must be setup, which includes providing a source of funds. For a more detailed explanation of what is freely available and what actions would incur costs, [see our FAQ](/genomics-platform/getting-started/faq). From fdb00f61ffeb583e98124f8e265699451e99a6e3 Mon Sep 17 00:00:00 2001 From: Meghann Kirk Date: Fri, 23 Jan 2026 08:31:07 -0600 Subject: [PATCH 03/17] feat: cc4kv0.5 --- content/2.cc4k/1.index.md | 107 ++++++++++++++++++ .../3.metadata-and-clinical-information.md | 3 +- 2 files changed, 109 insertions(+), 1 deletion(-) diff --git a/content/2.cc4k/1.index.md b/content/2.cc4k/1.index.md index 140d1dae..e4ce9e4b 100644 --- a/content/2.cc4k/1.index.md +++ b/content/2.cc4k/1.index.md @@ -4,6 +4,113 @@ navigation: title: Overview --- +## v0.5 + +Submitted: January xxxx, 2026 + +Click [here] () {target="_blank"} to download. + +CC4K (Cancer Classifications for Kids) provides a harmonized, computable pediatric cancer classification framework used across [St. Jude Cloud](https://stjude.cloud) and by the [CCDI Federated API](https://github.com/CBIIT/ccdi-federation-api). +Version 0.5 delivers a major revision to the solid tumor tree, replacing the prior bespoke tissue-of-origin model with a pediatric-specific structure grounded in the WHO 5th Edition Classification of Tumours: Paediatric Tumours (WHO pediatric book). + For an informative summary of the WHO pediatric book, see [Pfister et al. (Cancer Discovery, 2022)](https://doi.org/10.1158/2159-8290.CD-21-1094). + +By organizing the updated tree around the WHO pediatric book, the hierarchy reflects a pediatric-focused framework and improves consistency for pediatric entities that are often scattered across adult-oriented organ-system classifications. +Outside of CNS and hematological malignancies, the WHO organizes non-CNS solid tumor diagnoses into multiple tissue-specific blue books. +Directly translating this structure into previous versions of CC4K resulted in duplicated pediatric diagnoses appearing under multiple anatomic contexts, with examples shown below in Table 1. +Using the pediatric book’s organization as the basis for our tree structure in this update resolves these duplication issues by providing a single pediatric-oriented context or by explicitly omitting entities not yet defined for pediatric disease, while preserving extensibility for future updates. + +| **Tumor Classification Terms** | **Number of WHO Books Referenced** | **Number of References in Pediatric Book** | +|:----------------------------------:|:----------------------------------:|:------------------------------------------:| +| Ewing Sarcoma | 7 | 2* | +| Inflammatory Myofibroblastic Tumor | 7 | 1 | +| Adenoid Cystic Carcinoma | 7 | 0 | +| Angiosarcoma | 10 | 2* | +| Tubular Adenoma | 4 | 0 | +| Rhabdoid Tumor | 2 | 2* | +#### Table 1. Redundant terms across WHO Books + +*Includes references such as renal Ewing Sarcoma, Hepatic Angiosarcoma, and Atypical Teratoid/Rhabdoid Tumor. +Histogenic consistency was enforced across the tree, with Angiosarcoma aligned to Vascular Tumors, Inflammatory Myofibroblastic Tumor to Fibroblastic/Myofibroblastic Tumors, and Adenoid Cystic Carcinoma placed under Head and Neck Tumors, while anatomic site variation is captured through metadata attributes to deduplicate Ewing Sarcoma and Angiosarcoma. +Rhabdoid Tumors were elevated to its own entity, described below. + +### Comprehensive Updates + +The prior CC4K solid tumor hierarchy contained 256 total nodes (236 leaf nodes across 21 parent nodes) and was organized using a tissue-of-origin framework, initially aligned to OncoTree, but over-time, developing more into a bespoke framework. +In contrast, the updated v0.5 hierarchy contains 218 total nodes with 187 leaf nodes (Δ = −49) distributed across 31 parent nodes. +Tree depth remains four layers; however, the organization has shifted from site-centric to aligning with 11 WHO pediatric book chapters, introducing targeted subdivision where necessary, as described below. +Eight chapters were mapped directly (column A), while the structure for three chapters was intentionally modified (column B). +Using this updated hierarchy, approximately 9,474 solid tumor samples were reclassified. + +| | **A** | **B** | **C** | **D** | **E** | +|:------:|:---------------------------------------------------:|:-----------------------:|:------------------:|:------------------------------:|:------------------:| +| | **WHO Chapters aligned (Under the Pediatric Book)** | **Subchapter detail** | **Levels (depth)** | **CC4K (under Solid Tumor)** | **Levels (depth)** | +| **1** | Endocrine Tumors | | 3 | Endocrine Tumors | 2 | +| **2** | Peripheral Neuroblastic Tumors | | 3 | Peripheral Neuroblastic Tumors | 1 | +| **3** | Soft Tissue and Bone Tumors | | 3 | | | +| | | Soft Tissue Sarcomas | 2 | Soft Tissue Tumors | 2 | +| | | Bone Tumors | 2 | Bone Tumors | 1 | +| | | Undifferentiated Tumors | 2 | Undifferentiated Tumors | 1 | +| **4** | Germ Cell Tumors | | 3 | Germ Cell Tumors | 1 | +| **5** | Head and Neck Tumors | | 3 | Head and Neck Tumors | 1 | +| **6** | Skin Tumors | | 3 | Skin Tumors | 1 | +| **7** | Eye Tumors | | 3 | Eye Tumors | 1 | +| **8** | Thoracic Tumors | | 3 | Thoracic Tumors | 1 | +| **9** | Digestive System Tumors | | 3 | Digestive System Tumors | 2 | +| **10** | Renal and Male Genital Tumors | | 3 | | | +| | | Renal | 2 | Renal Tumors | 1 | +| | | Male Genital | 2 | Genital Tumors | 1 | +| **11** | Female Genital Tumors | | 3 | Genital Tumors | 1 | + +#### Table 2: Mapping of Pediatric WHO chapters to CC4K solid tumor domains. + +For example, we split the WHO chapters “Soft Tissue and Bone Tumors” and “Renal and Male Genital Tumors” because these chapters function primarily as aggregations of distinct groups. +In the Soft Tissue and Bone chapter, tumors are subdivided into soft tissue, bone, and undifferentiated subchapters, each of which is organized according to different underlying principles. +In this update, we elevated these subchapters to top-level nodes rather than retaining the aggregate chapter as a single branch, as seen in Table 2, column D. + +This change also enabled alignment with contemporary guidance to organize tumors by histogenetic lineage rather than by prior distinctions such as rhabdomyosarcoma versus non-rhabdomyosarcoma. +While the broad distinction is useful to categorize samples, this is not useful to delineate as a framework for a sample classification tree. +Bone and undifferentiated tumors are now represented as flat lists of leaf nodes to simplify handling of singleton entities and to avoid unnecessary nesting of diagnoses such as Ewing sarcoma and osteosarcoma. +Notably, rhabdoid tumors were extracted as a distinct entity under Soft Tissue Tumors. +Although rhabdoid tumors arise across multiple tissues of origin, their shared biology supports representation as a single queryable node, reducing redundancy across child leaves. + +Similarly, the Renal and Male Genital Tumors chapter was restructured because many male genital tumor entities overlap with those in the female genital book. +These were consolidated under a unified Genital Tumors node, with patient sex retained as an attribute if needed to stratify. + +### Challenges + +Certain pediatric tumor entities span multiple anatomic sites, histogenic lineages, or fall outside the current scope of the WHO pediatric book. +In CC4K v0.5, tubular adenoma, observed in the colon, gastrointestinal tract, and breast, was assigned a single canonical placement under Digestive System Tumors → Gastrointestinal → Tubular Adenoma. +Breast cases (n=1) are classified as Adenoma, NOS with anatomic site captured via metadata, preventing duplication while preserving query flexibility. Canonical placements are periodically re-evaluated as sample volume and distribution evolve. + +In total, 43 child leaf nodes in v0.5 fall outside the pediatric volume but were retained by evaluating where they might exist in a non-pediatric book. +For example, adrenal cortical adenoma and carcinoma are not explicitly defined in the WHO pediatric book but appear across other WHO books which now belong under Endocrine Tumors → Adrenal Tumors. +To see which nodes exist in non-pediatric books, we annotated this in column I in our downloadable tree for transparency. + +To address over-fragmentation, five low-frequency NEC nodes were consolidated into existing NOS categories. +This decision was informed by experience with NEC/NOS usage in the CNS tumor tree and by review of WHO solid tumor classifications, which are largely not molecularly driven and do not consistently support NEC distinctions. +Given the limited sample counts and lack of defining molecular features, maintaining separate NEC nodes was not justified. These categories were therefore consolidated, pending future evidence or novel biomarkers. + +Boundary conditions between the solid tumor (ST) and CNS trees were also clarified for germ cell tumors (GCTs). +Tumors explicitly defined as brain-specific germ cell entities are now placed under the CNS tree (e.g., Germ Cell Tumor, Brain). +In contrast, mixed germ cell tumors, yolk sac tumors, and germinomas with brain as the anatomic site remain under the solid tumor GCT branch. +This distinction reflects differences between WHO CNS5, which includes a single unstratified “germ cell tumor, brain” node, and the WHO pediatric book, which defines germ cell tumors as a universal chapter with resolved subtypes. +CC4K v0.5 integrates both frameworks to maintain consistency with each specific case. + +Finally, the CNS tumor tree was refined to reduce overlapping vocabulary across roots. +This included adding explicit CNS prefixes to CNS terms that would otherwise overlap with solid tumor terms (e.g., CNS Soft Tissue Tumors, CNS Tumors of Uncertain Differentiation, CNS CIC-rearranged Sarcoma), as well as identification of CNS Histiocytic Tumors and CNS Vascular Tumors as distinct domains. +These changes eliminate ambiguity while preserving the historical and commonly used distinction between CNS and non-CNS solid tumors. + +### Future Updates + +Next, we will focus on the remaining branches under Heme (e.g., Hodgkin and Non-Hodgkin Lymphoma and Other Heme Malignancies). + +### References: + +1. Pfister, S. M., Reyes-Múgica, M., Chan, J. K. C., Hasle, H., Lazar, A. J., Rossi, S., Ferrari, A., Jarzembowski, J. A., Pritchard-Jones, K., Hill, D. A., Jacques, T. S., Wesseling, P., López Terrada, D. H., von Deimling, A., Kratz, C. P., Cree, I. A., & Alaggio, R. (2022). A Summary of the Inaugural WHO Classification of Pediatric Tumors: Transitioning from the Optical into the Molecular Era. Cancer Discovery, 12(2), 331-355. [https://doi.org/10.1158/2159-8290.CD-21-1094] + +1. World Health Organization. (2022–2024). WHO classification of tumours (5th ed.). International Agency for Research on Cancer. + + ## v0.4 Submitted: September 3, 2025 diff --git a/content/3.genomics-platform/2.about-our-data/3.metadata-and-clinical-information.md b/content/3.genomics-platform/2.about-our-data/3.metadata-and-clinical-information.md index 61aa2e1a..81dd6215 100644 --- a/content/3.genomics-platform/2.about-our-data/3.metadata-and-clinical-information.md +++ b/content/3.genomics-platform/2.about-our-data/3.metadata-and-clinical-information.md @@ -38,12 +38,13 @@ Properties with `attr` prepended are information queried from the physician or r | `attr_read_type` | The sequencing read type, if available. | | `attr_inferred_strandedness` | Computationally determined strandedness of RNA-seq data, if applicable. | | `sj_publication_titles` | The title of associated publications(s), if the file was associated with a paper(s). | +| `ped_cancer_diagnosis_category` | The disease group which is associated with the pediatric cancer diagnosis. For more details see [here](https://cadsr.cancer.gov/onedata/Home.jsp). | | `sj_pub_accessions` | The related St. Jude Cloud accession number(s), if the file was associated with a paper(s). These group the files into publications as displayed on the Genomics Platform data browser. | | `sj_pmid_accessions` | The related [Pubmed][pubmed] accession number, if the file was associated with a paper. | | `attr_subtype_biomarkers` | A molecular mutation, SV or fusion event associated with a particular disease subtype that is used to define membership in that subtype. | | `sj_associated_diagnoses` | List of all available associated diagnoses for the subject (from the tumor samples or from a patient's clinical history). | | `attr_germline_sample` | The paired germline sample that was used when creating the Somatic VCF file, if applicable. | -| `attr_diagnosis_group` | Each file is categorized into one of five diagnosis groups based on the type of tumor - hematologic malignancy, solid tumor, brain tumor, germ cell tumor, or not applicable (for germline samples). | +| `attr_diagnosis_group` | Each file is categorized into one of five diagnosis groups based on the type of tumor - hematologic malignancy, solid tumor, brain tumor, or not applicable (for germline samples). | | `sj_ega_accessions` | The related [EGA][ega] accession number, if the file was associated with a paper. | | `sj_access_unit` | Lists which Data Access Unit (DAU) the file belongs to. For more on Data Access Units, see [here](https://university.stjude.cloud/docs/genomics-platform/about-our-data/dau-and-datasets/#data-access-unit). | | `sj_diseases` | If your data request was process after August 18, 2020, the field should be interpreted as the harmonized St. Jude Cloud diagnosis based on the best available information (data provided by the lab or PI and followup by scientists on the St. Jude Cloud team). If your data request was processed before August 18, 2020, this field should be interpreted as the disease identifier assigned at the time of genomic sequencing (namely, the diagnosis known at the time of genomic testing may not be the best available information). **If your data request was processed after August 18, 2020 and you'd like to use the most up to date, harmonized diagnosis**, we recommend using `sj_diseases` when including diagnosis in your analysis. If your data request was made before this time *or* if you wish to use the values exactly as provided by the lab or PI, we recommend using the lab-provided value in `attr_diagnosis`. For more information about our disease ontology go [here](https://university.stjude.cloud/docs/genomics-platform/about-our-data/disease-ontology). | From c41ac0638ed839941a8dcaa75a97480ef5bec9cc Mon Sep 17 00:00:00 2001 From: stjudecloud-cloudy Date: Mon, 26 Jan 2026 11:06:03 -0600 Subject: [PATCH 04/17] ci: :rocket: creates preview environment for pr131 [skip ci] --- deployment/preview/pr131/app.yaml | 88 +++++++++++++++++++++++++++++++ 1 file changed, 88 insertions(+) create mode 100644 deployment/preview/pr131/app.yaml diff --git a/deployment/preview/pr131/app.yaml b/deployment/preview/pr131/app.yaml new file mode 100644 index 00000000..16eab5a9 --- /dev/null +++ b/deployment/preview/pr131/app.yaml @@ -0,0 +1,88 @@ +--- +apiVersion: helm.toolkit.fluxcd.io/v2beta1 +kind: HelmRelease +metadata: + name: docs + namespace: docs-pr131 +spec: + interval: 30m + chart: + spec: + chart: generic + version: 1.1.x + sourceRef: + kind: HelmRepository + name: stjudecloud + namespace: flux-system + interval: 1h + values: + nameOverride: docs + extraDeploy: + - | + apiVersion: v1 + kind: Service + metadata: + name: {{ template "common.names.fullname" . }}-oauth-bridge + labels: {{- include "common.labels.standard" . | nindent 4 }} + {{- if .Values.commonLabels }} + {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} + {{- end }} + {{- if .Values.commonAnnotations }} + annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} + {{- end }} + spec: + type: ExternalName + externalName: oauth2-proxy.oauth2-proxy + - | + --- + apiVersion: networking.k8s.io/v1 + kind: Ingress + metadata: + name: {{ .Release.Name }}-oauth + spec: + ingressClassName: nginx + rules: + - host: {{ .Values.ingress.hostname }} + http: + paths: + - backend: + service: + name: {{ template "common.names.fullname" . }}-oauth-bridge + port: + number: 80 + path: /oauth2 + pathType: ImplementationSpecific + tls: + - hosts: + - {{ .Values.ingress.hostname }} + secretName: {{ .Values.ingress.hostname }}-tls + image: + repository: stjudecloud/docs + tag: latest # {"$imagepolicy": "flux-system:docs-pr131:tag"} + podAnnotations: + linkerd.io/inject: enabled + config.linkerd.io/proxy-cpu-request: 20m + containerPorts: + http: 3000 + service: + ports: + - name: http + protocol: TCP + port: 3000 + targetPort: http + ingress: + enabled: true + hostname: docs-pr131.staging.stjude.cloud + path: / + annotations: + cert-manager.io/cluster-issuer: letsencrypt-prod + linkerd.io/inject: ingress + nginx.ingress.kubernetes.io/auth-signin: https://$host/oauth2/start?rd=$escaped_request_uri + nginx.ingress.kubernetes.io/auth-url: https://$host/oauth2/auth + nginx.ingress.kubernetes.io/service-upstream: "true" + nginx.ingress.kubernetes.io/enable-modsecurity: "true" + nginx.ingress.kubernetes.io/enable-owasp-core-rules: "true" + tls: + enabled: true + datadog: + enabled: false From 1f66a43569a824da56010d6e9ce4a38b6f74b7b5 Mon Sep 17 00:00:00 2001 From: stjudecloud-cloudy Date: Mon, 26 Jan 2026 17:07:43 +0000 Subject: [PATCH 05/17] chore: :rocket: released stjudecloud.azurecr.io/stjudecloud/docs:pr131-e3b768a-231 to pr131 [skip ci] --- deployment/preview/pr131/app.yaml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/deployment/preview/pr131/app.yaml b/deployment/preview/pr131/app.yaml index 16eab5a9..b762022c 100644 --- a/deployment/preview/pr131/app.yaml +++ b/deployment/preview/pr131/app.yaml @@ -1,4 +1,3 @@ ---- apiVersion: helm.toolkit.fluxcd.io/v2beta1 kind: HelmRelease metadata: @@ -58,7 +57,7 @@ spec: secretName: {{ .Values.ingress.hostname }}-tls image: repository: stjudecloud/docs - tag: latest # {"$imagepolicy": "flux-system:docs-pr131:tag"} + tag: pr131-e3b768a-231 # {"$imagepolicy": "flux-system:docs-pr131:tag"} podAnnotations: linkerd.io/inject: enabled config.linkerd.io/proxy-cpu-request: 20m From e7c9db64cf3a7bd85ee5cb05b916285e6315ee9f Mon Sep 17 00:00:00 2001 From: Meghann Kirk Date: Fri, 30 Jan 2026 11:25:01 -0600 Subject: [PATCH 06/17] docs: cc4k program revisions --- content/2.cc4k/1.index.md | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/content/2.cc4k/1.index.md b/content/2.cc4k/1.index.md index e4ce9e4b..98495e99 100644 --- a/content/2.cc4k/1.index.md +++ b/content/2.cc4k/1.index.md @@ -12,12 +12,12 @@ Click [here] () {target="_blank"} to download. CC4K (Cancer Classifications for Kids) provides a harmonized, computable pediatric cancer classification framework used across [St. Jude Cloud](https://stjude.cloud) and by the [CCDI Federated API](https://github.com/CBIIT/ccdi-federation-api). Version 0.5 delivers a major revision to the solid tumor tree, replacing the prior bespoke tissue-of-origin model with a pediatric-specific structure grounded in the WHO 5th Edition Classification of Tumours: Paediatric Tumours (WHO pediatric book). - For an informative summary of the WHO pediatric book, see [Pfister et al. (Cancer Discovery, 2022)](https://doi.org/10.1158/2159-8290.CD-21-1094). + For an informative summary of the WHO pediatric book, see Pfister et al. 1​. By organizing the updated tree around the WHO pediatric book, the hierarchy reflects a pediatric-focused framework and improves consistency for pediatric entities that are often scattered across adult-oriented organ-system classifications. Outside of CNS and hematological malignancies, the WHO organizes non-CNS solid tumor diagnoses into multiple tissue-specific blue books. Directly translating this structure into previous versions of CC4K resulted in duplicated pediatric diagnoses appearing under multiple anatomic contexts, with examples shown below in Table 1. -Using the pediatric book’s organization as the basis for our tree structure in this update resolves these duplication issues by providing a single pediatric-oriented context or by explicitly omitting entities not yet defined for pediatric disease, while preserving extensibility for future updates. +Using the pediatric book’s organization as the basis for our tree structure in this update resolves these duplication issues by providing a single pediatric-oriented context or by explicitly omitting entities not yet defined for pediatric disease, while preserving extensibility for future updates. | **Tumor Classification Terms** | **Number of WHO Books Referenced** | **Number of References in Pediatric Book** | |:----------------------------------:|:----------------------------------:|:------------------------------------------:| @@ -27,6 +27,7 @@ Using the pediatric book’s organization as the basis for our tree structure in | Angiosarcoma | 10 | 2* | | Tubular Adenoma | 4 | 0 | | Rhabdoid Tumor | 2 | 2* | + #### Table 1. Redundant terms across WHO Books *Includes references such as renal Ewing Sarcoma, Hepatic Angiosarcoma, and Atypical Teratoid/Rhabdoid Tumor. @@ -61,7 +62,7 @@ Using this updated hierarchy, approximately 9,474 solid tumor samples were recla | | | Male Genital | 2 | Genital Tumors | 1 | | **11** | Female Genital Tumors | | 3 | Genital Tumors | 1 | -#### Table 2: Mapping of Pediatric WHO chapters to CC4K solid tumor domains. +#### Table 2: Mapping of Pediatric WHO chapters to CC4K solid tumor domains For example, we split the WHO chapters “Soft Tissue and Bone Tumors” and “Renal and Male Genital Tumors” because these chapters function primarily as aggregations of distinct groups. In the Soft Tissue and Bone chapter, tumors are subdivided into soft tissue, bone, and undifferentiated subchapters, each of which is organized according to different underlying principles. @@ -71,7 +72,7 @@ This change also enabled alignment with contemporary guidance to organize tumors While the broad distinction is useful to categorize samples, this is not useful to delineate as a framework for a sample classification tree. Bone and undifferentiated tumors are now represented as flat lists of leaf nodes to simplify handling of singleton entities and to avoid unnecessary nesting of diagnoses such as Ewing sarcoma and osteosarcoma. Notably, rhabdoid tumors were extracted as a distinct entity under Soft Tissue Tumors. -Although rhabdoid tumors arise across multiple tissues of origin, their shared biology supports representation as a single queryable node, reducing redundancy across child leaves. +Although rhabdoid tumors arise across multiple tissues of origin, their shared biology supports representation as a single queryable node, reducing redundancy across child leaves. Similarly, the Renal and Male Genital Tumors chapter was restructured because many male genital tumor entities overlap with those in the female genital book. These were consolidated under a unified Genital Tumors node, with patient sex retained as an attribute if needed to stratify. @@ -100,16 +101,14 @@ Finally, the CNS tumor tree was refined to reduce overlapping vocabulary across This included adding explicit CNS prefixes to CNS terms that would otherwise overlap with solid tumor terms (e.g., CNS Soft Tissue Tumors, CNS Tumors of Uncertain Differentiation, CNS CIC-rearranged Sarcoma), as well as identification of CNS Histiocytic Tumors and CNS Vascular Tumors as distinct domains. These changes eliminate ambiguity while preserving the historical and commonly used distinction between CNS and non-CNS solid tumors. -### Future Updates +### Future Updates Next, we will focus on the remaining branches under Heme (e.g., Hodgkin and Non-Hodgkin Lymphoma and Other Heme Malignancies). -### References: +### References 1. Pfister, S. M., Reyes-Múgica, M., Chan, J. K. C., Hasle, H., Lazar, A. J., Rossi, S., Ferrari, A., Jarzembowski, J. A., Pritchard-Jones, K., Hill, D. A., Jacques, T. S., Wesseling, P., López Terrada, D. H., von Deimling, A., Kratz, C. P., Cree, I. A., & Alaggio, R. (2022). A Summary of the Inaugural WHO Classification of Pediatric Tumors: Transitioning from the Optical into the Molecular Era. Cancer Discovery, 12(2), 331-355. [https://doi.org/10.1158/2159-8290.CD-21-1094] -1. World Health Organization. (2022–2024). WHO classification of tumours (5th ed.). International Agency for Research on Cancer. - ## v0.4 From df5c0ac49e66cf1ccdd4b15ca99d960238a230ae Mon Sep 17 00:00:00 2001 From: Meghann Kirk Date: Thu, 5 Mar 2026 08:59:33 -0600 Subject: [PATCH 07/17] revise: update date --- content/2.cc4k/1.index.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/content/2.cc4k/1.index.md b/content/2.cc4k/1.index.md index 98495e99..6db3197d 100644 --- a/content/2.cc4k/1.index.md +++ b/content/2.cc4k/1.index.md @@ -6,7 +6,7 @@ navigation: ## v0.5 -Submitted: January xxxx, 2026 +Submitted: March , 2026 Click [here] () {target="_blank"} to download. @@ -107,7 +107,7 @@ Next, we will focus on the remaining branches under Heme (e.g., Hodgkin and Non- ### References -1. Pfister, S. M., Reyes-Múgica, M., Chan, J. K. C., Hasle, H., Lazar, A. J., Rossi, S., Ferrari, A., Jarzembowski, J. A., Pritchard-Jones, K., Hill, D. A., Jacques, T. S., Wesseling, P., López Terrada, D. H., von Deimling, A., Kratz, C. P., Cree, I. A., & Alaggio, R. (2022). A Summary of the Inaugural WHO Classification of Pediatric Tumors: Transitioning from the Optical into the Molecular Era. Cancer Discovery, 12(2), 331-355. [https://doi.org/10.1158/2159-8290.CD-21-1094] +1. Pfister, S. M. et al. A Summary of the Inaugural WHO Classification of Pediatric Tumors: Transitioning from the Optical into the Molecular Era. Cancer Discov. 12, 331–355 (2022). [https://doi.org/10.1158/2159-8290.CD-21-1094] ## v0.4 From bfd3f2b01487ae6a50f2011991443a339e6f7776 Mon Sep 17 00:00:00 2001 From: Meghann Kirk Date: Thu, 12 Mar 2026 09:01:38 -0500 Subject: [PATCH 08/17] feat(cc4k): adds v.05 download --- content/2.cc4k/1.index.md | 4 ++-- public/files/cc4k/Official_CC4K_v0.5.xlsx | Bin 0 -> 96757 bytes 2 files changed, 2 insertions(+), 2 deletions(-) create mode 100644 public/files/cc4k/Official_CC4K_v0.5.xlsx diff --git a/content/2.cc4k/1.index.md b/content/2.cc4k/1.index.md index 6db3197d..e91a72ed 100644 --- a/content/2.cc4k/1.index.md +++ b/content/2.cc4k/1.index.md @@ -6,9 +6,9 @@ navigation: ## v0.5 -Submitted: March , 2026 +Submitted: March 11, 2026 -Click [here] () {target="_blank"} to download. +(Click [here](/files/cc4k/Official_CC4K_v0.5.xlsx){target="_blank"} to download.) CC4K (Cancer Classifications for Kids) provides a harmonized, computable pediatric cancer classification framework used across [St. Jude Cloud](https://stjude.cloud) and by the [CCDI Federated API](https://github.com/CBIIT/ccdi-federation-api). Version 0.5 delivers a major revision to the solid tumor tree, replacing the prior bespoke tissue-of-origin model with a pediatric-specific structure grounded in the WHO 5th Edition Classification of Tumours: Paediatric Tumours (WHO pediatric book). diff --git a/public/files/cc4k/Official_CC4K_v0.5.xlsx b/public/files/cc4k/Official_CC4K_v0.5.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..b18c05b9339cd816e7f1d82722e0240c4d2530a8 GIT binary patch literal 96757 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

_o8yhJ2u6{`EFnjPyeL20jeL?(zB+W}4 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 R11SMW(0Oad5jvFu{txn>YBc}= literal 0 HcmV?d00001 From 94bb0598c794aca0fc3567798c32eef6e9c379dd Mon Sep 17 00:00:00 2001 From: Meghann Kirk Date: Thu, 12 Mar 2026 09:08:54 -0500 Subject: [PATCH 09/17] revise: update format --- content/2.cc4k/1.index.md | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/content/2.cc4k/1.index.md b/content/2.cc4k/1.index.md index e91a72ed..38905782 100644 --- a/content/2.cc4k/1.index.md +++ b/content/2.cc4k/1.index.md @@ -8,7 +8,7 @@ navigation: Submitted: March 11, 2026 -(Click [here](/files/cc4k/Official_CC4K_v0.5.xlsx){target="_blank"} to download.) +(Click [here](/files/cc4k/Official_CC4K_v0.5.xlsx){target="_blank"} to download.) CC4K (Cancer Classifications for Kids) provides a harmonized, computable pediatric cancer classification framework used across [St. Jude Cloud](https://stjude.cloud) and by the [CCDI Federated API](https://github.com/CBIIT/ccdi-federation-api). Version 0.5 delivers a major revision to the solid tumor tree, replacing the prior bespoke tissue-of-origin model with a pediatric-specific structure grounded in the WHO 5th Edition Classification of Tumours: Paediatric Tumours (WHO pediatric book). @@ -28,7 +28,7 @@ Using the pediatric book’s organization as the basis for our tree structure in | Tubular Adenoma | 4 | 0 | | Rhabdoid Tumor | 2 | 2* | -#### Table 1. Redundant terms across WHO Books +### Table 1. Redundant terms across WHO Books *Includes references such as renal Ewing Sarcoma, Hepatic Angiosarcoma, and Atypical Teratoid/Rhabdoid Tumor. Histogenic consistency was enforced across the tree, with Angiosarcoma aligned to Vascular Tumors, Inflammatory Myofibroblastic Tumor to Fibroblastic/Myofibroblastic Tumors, and Adenoid Cystic Carcinoma placed under Head and Neck Tumors, while anatomic site variation is captured through metadata attributes to deduplicate Ewing Sarcoma and Angiosarcoma. @@ -109,7 +109,6 @@ Next, we will focus on the remaining branches under Heme (e.g., Hodgkin and Non- 1. Pfister, S. M. et al. A Summary of the Inaugural WHO Classification of Pediatric Tumors: Transitioning from the Optical into the Molecular Era. Cancer Discov. 12, 331–355 (2022). [https://doi.org/10.1158/2159-8290.CD-21-1094] - ## v0.4 Submitted: September 3, 2025 From b1360ec25e6fd1427151210adc4bd6f200252cd7 Mon Sep 17 00:00:00 2001 From: Meghann Kirk Date: Thu, 12 Mar 2026 09:22:08 -0500 Subject: [PATCH 10/17] Update content/2.cc4k/1.index.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- content/2.cc4k/1.index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/2.cc4k/1.index.md b/content/2.cc4k/1.index.md index 38905782..1ce2185a 100644 --- a/content/2.cc4k/1.index.md +++ b/content/2.cc4k/1.index.md @@ -107,7 +107,7 @@ Next, we will focus on the remaining branches under Heme (e.g., Hodgkin and Non- ### References -1. Pfister, S. M. et al. A Summary of the Inaugural WHO Classification of Pediatric Tumors: Transitioning from the Optical into the Molecular Era. Cancer Discov. 12, 331–355 (2022). [https://doi.org/10.1158/2159-8290.CD-21-1094] +1. Pfister, S. M. et al. A Summary of the Inaugural WHO Classification of Pediatric Tumors: Transitioning from the Optical into the Molecular Era. Cancer Discov. 12, 331–355 (2022). [https://doi.org/10.1158/2159-8290.CD-21-1094](https://doi.org/10.1158/2159-8290.CD-21-1094) ## v0.4 From 3a1922ad0ffc4a8b682b09d390757e4b2612afd0 Mon Sep 17 00:00:00 2001 From: Meghann Kirk Date: Thu, 12 Mar 2026 09:23:47 -0500 Subject: [PATCH 11/17] Update content/3.genomics-platform/2.about-our-data/3.metadata-and-clinical-information.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .../2.about-our-data/3.metadata-and-clinical-information.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/3.genomics-platform/2.about-our-data/3.metadata-and-clinical-information.md b/content/3.genomics-platform/2.about-our-data/3.metadata-and-clinical-information.md index 81dd6215..b701467c 100644 --- a/content/3.genomics-platform/2.about-our-data/3.metadata-and-clinical-information.md +++ b/content/3.genomics-platform/2.about-our-data/3.metadata-and-clinical-information.md @@ -44,7 +44,7 @@ Properties with `attr` prepended are information queried from the physician or r | `attr_subtype_biomarkers` | A molecular mutation, SV or fusion event associated with a particular disease subtype that is used to define membership in that subtype. | | `sj_associated_diagnoses` | List of all available associated diagnoses for the subject (from the tumor samples or from a patient's clinical history). | | `attr_germline_sample` | The paired germline sample that was used when creating the Somatic VCF file, if applicable. | -| `attr_diagnosis_group` | Each file is categorized into one of five diagnosis groups based on the type of tumor - hematologic malignancy, solid tumor, brain tumor, or not applicable (for germline samples). | +| `attr_diagnosis_group` | Each file is categorized into one of four diagnosis groups based on the type of tumor - hematologic malignancy, solid tumor, brain tumor, or not applicable (for germline samples). | | `sj_ega_accessions` | The related [EGA][ega] accession number, if the file was associated with a paper. | | `sj_access_unit` | Lists which Data Access Unit (DAU) the file belongs to. For more on Data Access Units, see [here](https://university.stjude.cloud/docs/genomics-platform/about-our-data/dau-and-datasets/#data-access-unit). | | `sj_diseases` | If your data request was process after August 18, 2020, the field should be interpreted as the harmonized St. Jude Cloud diagnosis based on the best available information (data provided by the lab or PI and followup by scientists on the St. Jude Cloud team). If your data request was processed before August 18, 2020, this field should be interpreted as the disease identifier assigned at the time of genomic sequencing (namely, the diagnosis known at the time of genomic testing may not be the best available information). **If your data request was processed after August 18, 2020 and you'd like to use the most up to date, harmonized diagnosis**, we recommend using `sj_diseases` when including diagnosis in your analysis. If your data request was made before this time *or* if you wish to use the values exactly as provided by the lab or PI, we recommend using the lab-provided value in `attr_diagnosis`. For more information about our disease ontology go [here](https://university.stjude.cloud/docs/genomics-platform/about-our-data/disease-ontology). | From 38587d103be81e0294b919705203eaa22007a0cf Mon Sep 17 00:00:00 2001 From: Meghann Kirk Date: Thu, 12 Mar 2026 12:24:29 -0500 Subject: [PATCH 12/17] revise: formatting --- content/2.cc4k/1.index.md | 2 +- .../1.getting-started/2.accounts-and-billing.md | 12 ++---------- 2 files changed, 3 insertions(+), 11 deletions(-) diff --git a/content/2.cc4k/1.index.md b/content/2.cc4k/1.index.md index 1ce2185a..9bc3a08d 100644 --- a/content/2.cc4k/1.index.md +++ b/content/2.cc4k/1.index.md @@ -8,7 +8,7 @@ navigation: Submitted: March 11, 2026 -(Click [here](/files/cc4k/Official_CC4K_v0.5.xlsx){target="_blank"} to download.) +Click [here](/files/cc4k/Official_CC4K_v0.5.xlsx) {target="_blank"} to download. CC4K (Cancer Classifications for Kids) provides a harmonized, computable pediatric cancer classification framework used across [St. Jude Cloud](https://stjude.cloud) and by the [CCDI Federated API](https://github.com/CBIIT/ccdi-federation-api). Version 0.5 delivers a major revision to the solid tumor tree, replacing the prior bespoke tissue-of-origin model with a pediatric-specific structure grounded in the WHO 5th Edition Classification of Tumours: Paediatric Tumours (WHO pediatric book). diff --git a/content/3.genomics-platform/1.getting-started/2.accounts-and-billing.md b/content/3.genomics-platform/1.getting-started/2.accounts-and-billing.md index f2c63280..cea1f33e 100644 --- a/content/3.genomics-platform/1.getting-started/2.accounts-and-billing.md +++ b/content/3.genomics-platform/1.getting-started/2.accounts-and-billing.md @@ -5,14 +5,9 @@ description: Information on account creation and billing setup. St. Jude Cloud is built on top of [DNAnexus](https://www.dnanexus.com/), a data-analysis and management platform that specializes in the field of bioinformatics. All of our account management is shared between St. Jude Cloud and DNAnexus. -<<<<<<< HEAD ## Creating a St. Jude Cloud Account To create an account, simply navigate to [Genomics Platform](https://platform.stjude.cloud) and then select “Log In.” -======= -### Creating a St. Jude Cloud Account -To create an account, simply choose Genomics Platform on [the St. Jude Cloud homepage](https://stjude.cloud/) and then select “Log In.” ->>>>>>> c507e03 (feat: format correction) You will be presented with several options to choose from to setup up your account credentials. If you are a St. Jude employee, choose the St. Jude login option and use your St. Jude credentials for account creation. @@ -27,17 +22,13 @@ Select your preferred authentication method to proceed. Users who have an existing DNAnexus account must use the St. Jude Cloud account creation and login steps above to access St. Jude Cloud data. Once you have created an account through St. Jude Cloud your DNAnexus account and St. Jude Cloud account will be linked going forward. :: -<<<<<<< HEAD ## Billing Setup -======= -### Billing Setup ->>>>>>> c507e03 (feat: format correction) If you are a St. Jude employee, go to the [Bioinformatics Self Service page](https://sjcrh.sharepoint.com/sites/computational-biology/SitePages/Bioinformatics-Self-Service-on-St.-Jude-Cloud.aspx) on the Intranet for information on how to set up your billing account. If you are not a St. Jude employee, you will need to contact DNAnexus directly to setup billing. -To complete DNAnexus billing account setup, email DNAnexus support (support@dnanexus.com). +To complete DNAnexus billing account setup, email DNAnexus support (). DNAnexus Support will reach out directly once the email is received. Use the template below, adding in the required information to request billing assistance. Your DNAnexus account ID and email can be found listed on your User Account page on DNAnexus. @@ -61,6 +52,7 @@ If your DNAnexus account is already set up and you would like to access your bil 1. Login to your St. Jude Cloud account. 2. Click on your profile in the top right corner of the navigation and select 'DNAnexus Profile'. 3. Click on 'Billing Account' from the tabs listed just under the navigation bar. + ::callout{icon="i-heroicons-document-text-solid" color="blue"} **Cost** Data from St. Jude Cloud is available for free via the DNAnexus platform, but to submit a request and access the data, your DNAnexus billing account must be setup, which includes providing a source of funds. For a more detailed explanation of what is freely available and what actions would incur costs, [see our FAQ](/genomics-platform/getting-started/faq). From 9f312773edd93336aae0796a0b5efdde14942430 Mon Sep 17 00:00:00 2001 From: Meghann Kirk Date: Thu, 12 Mar 2026 16:03:57 -0500 Subject: [PATCH 13/17] Update content/2.cc4k/1.index.md Co-authored-by: Clay McLeod <3411613+claymcleod@users.noreply.github.com> --- content/2.cc4k/1.index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/2.cc4k/1.index.md b/content/2.cc4k/1.index.md index 9bc3a08d..9e850fc5 100644 --- a/content/2.cc4k/1.index.md +++ b/content/2.cc4k/1.index.md @@ -8,7 +8,7 @@ navigation: Submitted: March 11, 2026 -Click [here](/files/cc4k/Official_CC4K_v0.5.xlsx) {target="_blank"} to download. +Click [here](/files/cc4k/Official_CC4K_v0.5.xlsx){target="_blank"} to download. CC4K (Cancer Classifications for Kids) provides a harmonized, computable pediatric cancer classification framework used across [St. Jude Cloud](https://stjude.cloud) and by the [CCDI Federated API](https://github.com/CBIIT/ccdi-federation-api). Version 0.5 delivers a major revision to the solid tumor tree, replacing the prior bespoke tissue-of-origin model with a pediatric-specific structure grounded in the WHO 5th Edition Classification of Tumours: Paediatric Tumours (WHO pediatric book). From fd2b43d055ee3e842eca533f1937f4f505b4296c Mon Sep 17 00:00:00 2001 From: Meghann Kirk Date: Thu, 12 Mar 2026 16:19:22 -0500 Subject: [PATCH 14/17] revise: feedback from review --- content/2.cc4k/1.index.md | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/content/2.cc4k/1.index.md b/content/2.cc4k/1.index.md index 9e850fc5..83502901 100644 --- a/content/2.cc4k/1.index.md +++ b/content/2.cc4k/1.index.md @@ -4,15 +4,16 @@ navigation: title: Overview --- +CC4K (Cancer Classifications for Kids) provides a harmonized, computable pediatric cancer classification framework used across [St. Jude Cloud](https://stjude.cloud) and by the [CCDI Federated API](https://github.com/CBIIT/ccdi-federation-api). + ## v0.5 Submitted: March 11, 2026 Click [here](/files/cc4k/Official_CC4K_v0.5.xlsx){target="_blank"} to download. -CC4K (Cancer Classifications for Kids) provides a harmonized, computable pediatric cancer classification framework used across [St. Jude Cloud](https://stjude.cloud) and by the [CCDI Federated API](https://github.com/CBIIT/ccdi-federation-api). Version 0.5 delivers a major revision to the solid tumor tree, replacing the prior bespoke tissue-of-origin model with a pediatric-specific structure grounded in the WHO 5th Edition Classification of Tumours: Paediatric Tumours (WHO pediatric book). - For an informative summary of the WHO pediatric book, see Pfister et al. 1​. +For an informative summary of the WHO pediatric book, see Pfister et al.1. By organizing the updated tree around the WHO pediatric book, the hierarchy reflects a pediatric-focused framework and improves consistency for pediatric entities that are often scattered across adult-oriented organ-system classifications. Outside of CNS and hematological malignancies, the WHO organizes non-CNS solid tumor diagnoses into multiple tissue-specific blue books. @@ -28,11 +29,11 @@ Using the pediatric book’s organization as the basis for our tree structure in | Tubular Adenoma | 4 | 0 | | Rhabdoid Tumor | 2 | 2* | -### Table 1. Redundant terms across WHO Books +**Table 1:** Redundant terms across WHO Books *Includes references such as renal Ewing Sarcoma, Hepatic Angiosarcoma, and Atypical Teratoid/Rhabdoid Tumor. Histogenic consistency was enforced across the tree, with Angiosarcoma aligned to Vascular Tumors, Inflammatory Myofibroblastic Tumor to Fibroblastic/Myofibroblastic Tumors, and Adenoid Cystic Carcinoma placed under Head and Neck Tumors, while anatomic site variation is captured through metadata attributes to deduplicate Ewing Sarcoma and Angiosarcoma. -Rhabdoid Tumors were elevated to its own entity, described below. +Rhabdoid Tumor was elevated to its own entity, described below. ### Comprehensive Updates @@ -62,7 +63,7 @@ Using this updated hierarchy, approximately 9,474 solid tumor samples were recla | | | Male Genital | 2 | Genital Tumors | 1 | | **11** | Female Genital Tumors | | 3 | Genital Tumors | 1 | -#### Table 2: Mapping of Pediatric WHO chapters to CC4K solid tumor domains +**Table 2:** Mapping of Pediatric WHO chapters to CC4K solid tumor domains For example, we split the WHO chapters “Soft Tissue and Bone Tumors” and “Renal and Male Genital Tumors” because these chapters function primarily as aggregations of distinct groups. In the Soft Tissue and Bone chapter, tumors are subdivided into soft tissue, bone, and undifferentiated subchapters, each of which is organized according to different underlying principles. From de63af774e45e4a15d0fdc2cba12db048aedc416 Mon Sep 17 00:00:00 2001 From: Meghann Kirk Date: Thu, 26 Mar 2026 11:44:11 -0500 Subject: [PATCH 15/17] feat: dau updates --- content/2.cc4k/1.index.md | 12 ++ .../1.data-sets-and-data-access-units.md | 164 +++++++++++++++--- 2 files changed, 155 insertions(+), 21 deletions(-) diff --git a/content/2.cc4k/1.index.md b/content/2.cc4k/1.index.md index 83502901..7357ad8c 100644 --- a/content/2.cc4k/1.index.md +++ b/content/2.cc4k/1.index.md @@ -6,6 +6,18 @@ navigation: CC4K (Cancer Classifications for Kids) provides a harmonized, computable pediatric cancer classification framework used across [St. Jude Cloud](https://stjude.cloud) and by the [CCDI Federated API](https://github.com/CBIIT/ccdi-federation-api). +## v0.5.1 + +Submitted: March XXX, 2026 + +Click [here]() for download. + +Version 0.5.1 provides a focused incremental update to the CC4K solid tumor hierarchy following the structural revisions introduced in v0.5. +This release adds four new disease classifications identified through newly curated case studies requiring formal classification within the tree. +These include the solid tumor entities Dyskeratosis Congenita, Chondromyxoid Fibroma, and Sinonasal Angiofibroma, as well as the hematologic malignancy Primary Mediastinal Large B-cell Lymphoma. +These nodes are introduced to ensure accurate representation of incoming samples and to maintain alignment with the [WHO 5th Edition Classification of Tumours: Paediatric Tumours](https://tumourclassification.iarc.who.int/) (Pediatric bluebook). +No structural reorganization of the tree was performed; rather, this update reflects a measured expansion within the existing Pediatric bluebook, preserving the chapter-based organizational principles established in v0.5. + ## v0.5 Submitted: March 11, 2026 diff --git a/content/3.genomics-platform/2.about-our-data/1.data-sets-and-data-access-units.md b/content/3.genomics-platform/2.about-our-data/1.data-sets-and-data-access-units.md index 5d02540d..1eafd49e 100644 --- a/content/3.genomics-platform/2.about-our-data/1.data-sets-and-data-access-units.md +++ b/content/3.genomics-platform/2.about-our-data/1.data-sets-and-data-access-units.md @@ -2,20 +2,34 @@ title: Data Sets and Data Access Units --- -## Data Set +## Table of Contents + +- [Key Concepts](#key-concepts) + - [Data Set](#data-set) + - [Data Access Unit (DAU)](#data-access-unit) + - [Data Access Committee (DAC)](#data-access-committee) + - [Embargo Date](#embargo-date) +- [List of DAUs](#list-of-daus) +- [List of Data Sets](#list-of-data-sets) + +--- + +## Key Concepts + +### Data Set A St. Jude Cloud Data Set is a grouping of data which has been curated by St. Jude and can correspond to a study, project, or specific disease. They are available for free to researchers and access to a Data Set can be requested from the data browser. However, access is not granted at the Data Set level, but rather the Data Access Unit. -A single Data Set may belong to only one DAU, or it could belong in multiple if it contains data came from different groups. +A single Data Set may belong to only one DAU, or it could belong in multiple if it contains data that came from different groups. An approved Data Access Request grants access to a particular Data Access Unit which includes specific Data Sets that can be selected from the Data Browser. An approved DAR would give access not only to the data selected at the time, but also any additional data that is included in the DAUs which were approved. Only the data initially selected will be vended to a project folder upon approval but returning to the data browser and selecting additional data which falls under the approved DAUs will not require another Data Access Request. -See [the list of Data Sets.](#list-of-data-sets) +See [the list of Data Sets.](#list-of-data-sets) -## Data Access Unit +### Data Access Unit (DAU) A St. Jude Cloud **Data Access Unit (DAU)** is a grouping of data that typically corresponds to a project, study, or Data Set generated at the same time at the same institution. Each DAU has its own governing body of researchers, the [Data Access Committee](#data-access-committee), who preside over the data and who may grant or deny access. @@ -27,7 +41,7 @@ For a more detailed description please see the respective [Schedule 1(s)](/overv See [the list of Data Access Units.](#list-of-daus) -## Data Access Committee +### Data Access Committee (DAC) A St. Jude Cloud **Data Access Committee (DAC)** is a group of St. Jude researchers who oversee access to a particular [Data Access Unit (DAU)](#data-access-unit) and evaluate incoming data requests. @@ -42,19 +56,31 @@ Once you place a request, your application will be routed to the corresponding t Since each DAC is made up of different individuals using different criteria for evaluation, you may or may not be approved for access to all of the files. :: -## Embargo Date +### Embargo Date The **Embargo Date** specifies the date that a publishing embargo on the file in question has been lifted. Publishing using any of the files _before_ the embargo date has passed is strictly prohibited as outlined in section 1.15 of the [Data Access Agreement (DAA)](/genomics-platform/getting-started/making-a-data-request). Some Data, including Data funded by the NIH, are not subject to embargo. Applicable Embargo Dates can be found in [Genomics Platform Metadata](https://platform.stjude.cloud/api/v1/manifest.tsv){target="_blank"} in the `SJ_Embargo_Date` column. +--- + ## List of DAUs -We currently have the six [Data Access Units (DAU)](#data-access-unit) listed below. +We currently have the seven [Data Access Units (DAU)](#data-access-unit) listed below. Basic clinical data is available for relevant subjects in each DAU. Click on the name below to navigate directly to that DAU's Study page for more detailed information. -The [Data Sets](#data-set) included in each DAU are listed below, note that some Data Sets are a part of multiple DAU's. +The [Data Sets](#data-set) included in each DAU are listed below; note that some Data Sets are a part of multiple DAUs. + +| DAU | Focus | Data Type | +|---------------------------------------------------------------------------------------------------------|--------------------------------------------------|---------------------------------------| +| [CCSS](#childhood-cancer-survivor-study-ccss) | Long-term outcomes in childhood cancer survivors | Germline WGS | +| [Clinical Genomics](#clinical-genomics) | Variants influencing childhood tumor development | Paired tumor-normal WGS, WES, RNA-Seq | +| [CReATe](#clinical-research-in-als-and-related-disorders-for-therapeutic-development-consortium-create) | ALS and related disorders | WGS | +| [PanALL](#pan-acute-lymphoblastic-leukemia-panall) | ALL subtypes across the age continuum | Tumor-only RNA-Seq | +| [PCGP](#pediatric-cancer-genome-project-pcgp) | Genetic origins of pediatric cancer | Paired tumor-normal WGS, WES, RNA-Seq | +| [SGP](#sickle-cell-genome-project-sgp) | Genetic modifiers in Sickle Cell Disease | Germline WGS | +| [SJLIFE](#st-jude-life-sjlife) | Long-term adverse outcomes of cancer therapy | Germline WGS, WES | ### Childhood Cancer Survivor Study (CCSS) @@ -73,6 +99,8 @@ The following data set(s) are included within Clinical Genomics: - [Clinical Pilot](#clinical-pilot) - [Genome 4 Kids (G4K)](#genome-4-kids) - [Real-Time Clinical Genomics (RTCG)](#real-time-clinical-genomics) +- [Genomics and Transcriptomics of Relapsed Pediatric AML (RPAML)](#genomics-and-transcriptomics-of-relapsed-pediatric-aml) +- [Pediatric Brain Tumor Program (PBTP)](#pediatric-brain-tumor-program) ### Clinical Research in ALS and Related Disorders for Therapeutic Development Consortium (CReATe) @@ -99,6 +127,15 @@ The following data set(s) are included within PCGP: - [Pan-Acute Lymphoblastic Leukemia (PanALL)](#pan-acute-lymphoblastic-leukemia) - [Pediatric Cancer Genome Project (PCGP)](#pediatric-cancer-genome-project) - [Pediatric therapy-related Myeloid Neoplasms (tMN)](#pediatric-therapy-related-myeloid-neoplasms) +- [Genomics and Transcriptomics of Relapsed Pediatric AML (RPAML)](#genomics-and-transcriptomics-of-relapsed-pediatric-aml) +- [Pediatric Brain Tumor Program (PBTP)](#pediatric-brain-tumor-program) +- [Landscape of Pediatric Acute Myeloid Leukemia (PanpAML)](#landscape-of-pediatric-acute-myeloid-leukemia) +- [DMG-H3K27a Clonal Evolution (H3K27A_EVOLUTION)](#dmg-h3k27a-clonal-evolution) +- [Atypical Teratoid/Rhabdoid Tumor-derived Tumoroid Models (ATRT_TM)](#atypical-teratoidrhabdoid-tumor-derived-tumoroid-models) +- [Pediatric Acute Myeloid Leukemia (PedAML)](#pediatric-acute-myeloid-leukemia) +- [Medulloblastoma Preclinical Ribociclib and Gemcitabine (MBPRG)](#medulloblastoma-preclinical-ribociclib-and-gemcitabine) +- [Medulloblastoma Preclinical Ribociclib and Paxalisib (MBPRP)](#medulloblastoma-preclinical-ribociclib-and-paxalisib) +- [St. Jude Life Clonal Hematopoiesis (SJLIFE_ClonalHematopoiesis)](#st-jude-life-clonal-hematopoiesis) ### Sickle Cell Genome Project (SGP) @@ -114,14 +151,47 @@ The following data set(s) are included within SJLIFE: - [St. Jude Life (SJLIFE)](#st-jude-life) +--- + ## List of Data Sets -We currently have the ten [Data Sets](#data-set) listed below. +We currently have 21 [Data Sets](#data-set) listed below. Additional information can also be seen including which [Data Access Units (DAU)](#data-access-unit) the Data Set belongs to, tissue type, sequencing type, number of samples, additional links, and a brief description. +| Data Set | DAU(s) | Tissue Type | Sequencing | Samples | +|--------------------------------------------------------------------------------------------------|-------------------------|---------------------|--------------------------|--------:| +| [ATRT_TM](#atypical-teratoidrhabdoid-tumor-derived-tumoroid-models) | PCGP | — | WES, WGS, RNA-Seq | 8 | +| [CCSS](#childhood-cancer-survivor-study) | CCSS | Germline Only | WGS | 2,912 | +| [Cicero Benchmark](#cicero-benchmark) | PCGP, Clinical Genomics | Paired Tumor-Normal | RNA-Seq | 124 | +| [Clinical Pilot](#clinical-pilot) | PCGP, Clinical Genomics | Paired Tumor-Normal | WGS, WES, RNA-Seq | 155 | +| [CReATe](#clinical-research-in-als-and-related-disorders-for-therapeutic-development-consortium) | CReATe | PBMC Germline DNA | WGS | 705 | +| [CSTN](#childhood-solid-tumor-network) | PCGP, Clinical Genomics | Paired Tumor-Normal | WGS, WES, RNA-Seq | 143 | +| [G4K](#genome-4-kids) | Clinical Genomics | Paired Tumor-Normal | WGS, WES, RNA-Seq | 571 | +| [H3K27A_EVOLUTION](#dmg-h3k27a-clonal-evolution) | PCGP | — | — | 70 | +| [MBPRG](#medulloblastoma-preclinical-ribociclib-and-gemcitabine) | PCGP | — | RNA-Seq | 70 | +| [MBPRP](#medulloblastoma-preclinical-ribociclib-and-paxalisib) | PCGP | — | RNA-Seq | 39 | +| [PanALL](#pan-acute-lymphoblastic-leukemia) | PanALL | Paired Tumor-Normal | RNA-Seq | 735 | +| [PanpAML](#landscape-of-pediatric-acute-myeloid-leukemia) | PCGP | — | — | 272 | +| [PBTP](#pediatric-brain-tumor-program) | Clinical Genomics, PCGP | — | WES, WGS, RNA-Seq | 97 | +| [PCGP](#pediatric-cancer-genome-project) | PCGP | Paired Tumor-Normal | WGS, WES, RNA-Seq | 3,031 | +| [PedAML](#pediatric-acute-myeloid-leukemia) | PCGP | — | WES, WGS, RNA-Seq | 275 | +| [RPAML](#genomics-and-transcriptomics-of-relapsed-pediatric-aml) | Clinical Genomics, PCGP | — | — | — | +| [RTCG](#real-time-clinical-genomics) | Clinical Genomics | Paired Tumor-Normal | WGS, WES, RNA-Seq | 2,371 | +| [SGP](#sickle-cell-genome-project) | SGP | Germline Only | WGS | 807 | +| [SJLIFE](#st-jude-life) | SJLIFE | Germline Only | WGS, WES | 4,838 | +| [SJLIFE_ClonalHematopoiesis](#st-jude-life-clonal-hematopoiesis) | PCGP | — | SingleCell-WGS, Targeted | 3,192 | +| [tMN](#pediatric-therapy-related-myeloid-neoplasms) | PCGP | Paired Tumor-Normal | WGS, WES, RNA-Seq | 206 | + +### Atypical Teratoid/Rhabdoid Tumor-derived Tumoroid Models + +**DAU**: PCGP | **Tissue Type**: — | **Sequencing Type**: WES, WGS, RNA-Seq | **Samples**: 8 + +The ATRT-TM dataset comprises atypical teratoid/rhabdoid tumors (ATRT) of the Sonic hedgehog (ATRT-SHH) and Myc (ATRT-MYC) subgroups. ATRT-SHH and ATRT-MYC patient-derived orthotopic xenografts (PDOX) were used to generate pre-clinical in vitro tumoroid models. The key objective of this dataset is to validate the tumoroid models by comparing them to their parental PDOX at the molecular level, including gene alterations (whole genome/whole exome sequencing), gene expression (RNA-seq), and DNA methylation (Illumina EPIC array). +The findings of the project were published in [Oncogene](https://doi.org/10.1038/s41388-023-02681-y). + ### Childhood Cancer Survivor Study -**DAU**: CCSS | **Tissue Type**: Germline Only | **Sequencing Type**: WGS | **Samples**: 2912 | **[Additional Information About CCSS](https://ccss.stjude.org/)** +**DAU**: CCSS | **Tissue Type**: Germline Only | **Sequencing Type**: WGS | **Samples**: 2,912 | **[Additional Information About CCSS](https://ccss.stjude.org/)** Childhood Cancer Survivor Study (CCSS) is a germline-only Data Set consisting of whole genome sequencing of childhood cancer survivors. CCSS is a multi-institutional, multi-disciplinary, NCI funded collaborative resource established to evaluate long-term outcomes among survivors of childhood cancer. It is a retrospective cohort consisting of >24,000 five-year survivors of childhood cancer who were diagnosed between 1970-1999 at one of 31 participating centers in the U.S. and Canada. @@ -150,32 +220,39 @@ With any questions on the nature or implications of this warning, please contact ### Childhood Solid Tumor Network -**DAU**: PCGP and Clinical Genomics | **Tissue Type**: Paired Tumor-Normal | **Sequencing Type**: WGS, WES, RNA-Seq | **Samples**: 143 | **[Additional Information About CSTN](https://www.stjude.org/research/resources-data/childhood-solid-tumor-network.html)** +**DAU**: PCGP, Clinical Genomics | **Tissue Type**: Paired Tumor-Normal | **Sequencing Type**: WGS, WES, RNA-Seq | **Samples**: 143 | **[Additional Information About CSTN](https://www.stjude.org/research/resources-data/childhood-solid-tumor-network.html)** The Childhood Solid Tumor Network (CSTN) is a St. Jude Children's Research Hospital initiative to disseminate its childhood solid tumor resources and data. The raw Data Sets from this initiative are made available via St. Jude Cloud. ### Cicero Benchmark -**DAU**: PCGP and Clinical Genomics | **Tissue Type**: Paired Tumor-Normal | **Sequencing Type**: RNA-Seq | **Samples**: 124 +**DAU**: PCGP, Clinical Genomics | **Tissue Type**: Paired Tumor-Normal | **Sequencing Type**: RNA-Seq | **Samples**: 124 The CICERO Data Set contains the samples which were selected for use in the [CICERO Paper](https://genomebiology.biomedcentral.com/articles/10.1186/s13059-020-02043-x). +### Clinical Pilot + +**DAU**: PCGP, Clinical Genomics | **Tissue Type**: Paired Tumor-Normal | **Sequencing Type**: WGS, WES, RNA-Seq | **Samples**: 155 | **[Additional Information About Clinical Genomics](https://www.stjude.cloud/studies/clinical-genomics)** + +The Clinical Pilot project was a retrospective study that evaluated the accuracy and demonstrated the feasibility of three-platform sequencing in a CAP/CLIA setting. +The findings of this project were published in [Nature Communications](https://pubmed.ncbi.nlm.nih.gov/30262806/). + ### Clinical Research in ALS and Related Disorders for Therapeutic Development Consortium -**DAU**: CReATe | **Tissue Type**: PBMC germline DNA | **Sequencing Type**: WGS | **Samples**: 705 +**DAU**: CReATe | **Tissue Type**: PBMC Germline DNA | **Sequencing Type**: WGS | **Samples**: 705 The Phenotype-Genotype-Biomarker (PGB, or PGB1) study (NCT02327845) of the Clinical Research in ALS and Related Disorders for Therapeutic Development (CReATe) Consortium was a natural history and biomarker study of patients with amyotrophic lateral sclerosis (ALS) or a related disorder, including but not limited to ALS-frontotemporal dementia (ALS-FTD), progressive muscular atrophy (PMA), primary lateral sclerosis (PLS), hereditary spastic paraplegia (HSP), and multisystem proteinopathy (MSP). In addition to patients enrolled in the PGB1 Cohort (primary participants), the study also enrolled family members for limited data collection (secondary participants). This dataset includes WGS data from N=705 in PGB1, including N=472 ALS/ALS-FTD, N=20 PMA, N=47 PLS, N=162 HSP, and N=4 with other related disorders. The findings of the project were published in [Translational Neurodegeneration](https://translationalneurodegeneration.biomedcentral.com/articles/10.1186/s40035-025-00516-2). -### Clinical Pilot +### DMG-H3K27a Clonal Evolution -**DAU**: PCGP and Clinical Genomics | **Tissue Type**: Paired Tumor-Normal | **Sequencing Type**: WGS, WES, RNA-Seq | **Samples**: 155 | **[Additional Information About Clinical Genomics](https://www.stjude.cloud/studies/clinical-genomics)** +**DAU**: PCGP | **Tissue Type**: — | **Sequencing Type**: — | **Samples**: 70 -The Clinical Pilot project was a retrospective study that evaluated the accuracy and demonstrated the feasibility of three-platform sequencing in a CAP/CLIA setting. -The findings of this project were published in [Nature Communications](https://pubmed.ncbi.nlm.nih.gov/30262806/). +The primary purpose of the DMG-H3K27a Clonal Evolution (H3K27A_EVOLUTION) project is to understand how clonal evolution contributes to tumor invasive spread. The study performed exome sequencing and SNP array profiling on 49 multi-region autopsy samples from 11 patients with pontine DMG-H3 K27-a enrolled in a phase I clinical trial of PDGFR inhibitor crenolanib. Additional objectives include deconvoluting subclonal composition and prevalence at each tumor region to study convergent evolution and invasion patterns. +For more information see: [http://permalinks.stjude.cloud/permalinks/h3k27a_evolution](http://permalinks.stjude.cloud/permalinks/h3k27a_evolution) ### Genome 4 Kids @@ -184,16 +261,55 @@ The findings of this project were published in [Nature Communications](https://p The goal of the Genomes 4 Kids (G4K) prospective study was to determine whether the three-platform sequencing protocol laid out in the Clinical Pilot project could generate results on a clinical timeline in practice and to evaluate the prevalence of actionable findings. The study concluded with just over 300 patients, and the publication is currently in review. +### Genomics and Transcriptomics of Relapsed Pediatric AML + +**DAU**: Clinical Genomics, PCGP | **Tissue Type**: — | **Sequencing Type**: — | **Samples**: — + +The primary purpose of the Relapsed Pediatric AML Dataset (RPAML) is to identify the tumor-acquired (somatic) genome sequence and structural variants in pediatric AML at the time of disease relapse. Additional objectives include the acquisition and analysis of additional genomic data, including gene expression data, mutational signatures, and germline variants that may predispose to AML or other bone marrow disorders. +The findings of the project were published in [Blood Cancer Discovery](https://doi.org/10.1158/2643-3230.BCD-21-0160). + +### Landscape of Pediatric Acute Myeloid Leukemia + +**DAU**: PCGP | **Tissue Type**: — | **Sequencing Type**: — | **Samples**: 272 + +Recent studies on pediatric acute myeloid leukemia (pAML) have revealed pediatric-specific driver alterations, many of which are underrepresented in the current classification schemas. The PanpAML study systematically categorized 887 pAML cases into 23 mutually distinct molecular categories, including new major entities such as UBTF or BCL11B, covering 91.4% of the cohort. These molecular categories were associated with unique expression profiles and mutational patterns, and were strongly associated with clinical outcomes, leading to the establishment of a new prognostic framework for pAML based on updated molecular categories and minimal residual disease. +The findings of the project were published in [Nature Genetics](https://doi.org/10.1038/s41588-023-01640-3). + +### Medulloblastoma Preclinical Ribociclib and Gemcitabine + +**DAU**: PCGP | **Tissue Type**: — | **Sequencing Type**: RNA-Seq | **Samples**: 70 + +The MBPRG dataset comprises medulloblastoma group 3 (G3 MB) patient-derived orthotopic xenografts (PDOX) and mouse G3 MB tumor models. Both human (PDOX) and mouse tumor models were treated with either ribociclib (CDK4/6 inhibitor), gemcitabine (metabolic inhibitor of DNA synthesis), or the combination of these two drugs in comparison to control (vehicle). The key objective of this dataset is to evaluate the impact of this treatment and identify perturbation of gene expression/pathways at the transcriptional level in G3 MB. + +### Medulloblastoma Preclinical Ribociclib and Paxalisib + +**DAU**: PCGP | **Tissue Type**: — | **Sequencing Type**: RNA-Seq | **Samples**: 39 + +The MBPRP dataset comprises medulloblastoma group 3 (G3 MB) and medulloblastoma Sonic hedgehog (SHH MB) patient-derived orthotopic xenografts (PDOX). These human tumor models were treated with either ribociclib (CDK4/6 inhibitor), paxalisib (PI3K/mTOR inhibitor), or the combination of these two drugs in comparison to control (vehicle). The key objective of this dataset is to validate the synergistic effect of the combination treatment observed in vitro, and evaluate the impact of these treatments on gene expression/pathways at the transcriptional level in MB. + ### Pan-Acute Lymphoblastic Leukemia **DAU**: PanALL | **Tissue Type**: Paired Tumor-Normal | **Sequencing Type**: RNA-Seq | **Samples**: 735 Pan-Acute Lymphoblastic Leukemia (PanALL) comprises cases of B-progenitor and T-lineage ALL encompassing the spectrum of ALL subtypes across the age continuum. -Samples sequenced were obtained from multiple sites, centers and cooperative groups including St. Jude Children’s Research Hospital, The Children’s Oncology Group, The Alliance – Cancer and Leukemia Group B, the Eastern Cooperative Oncology Group, The Southwestern Oncology group, MD Anderson Cancer Center, City of Hope National Medical Center, Princess Margaret Cancer Center, Northern Italy Leukemia Group, and UKALL. +Samples sequenced were obtained from multiple sites, centers and cooperative groups including St. Jude Children's Research Hospital, The Children's Oncology Group, The Alliance – Cancer and Leukemia Group B, the Eastern Cooperative Oncology Group, The Southwestern Oncology group, MD Anderson Cancer Center, City of Hope National Medical Center, Princess Margaret Cancer Center, Northern Italy Leukemia Group, and UKALL. + +### Pediatric Acute Myeloid Leukemia + +**DAU**: PCGP | **Tissue Type**: — | **Sequencing Type**: WES, WGS, RNA-Seq | **Samples**: 275 + +The primary purpose of the Pediatric AML (PedAML) Data Set is to identify the genome sequence and structural variants that define the different molecular subtypes of pediatric AML (pAML). Additional objectives include, but are not limited to, the acquisition and analysis of additional genomic data, including gene expression data and patterns of mutational cooperativity. + +### Pediatric Brain Tumor Program + +**DAU**: Clinical Genomics, PCGP | **Tissue Type**: — | **Sequencing Type**: WES, WGS, RNA-Seq | **Samples**: 97 + +The Pediatric Brain Tumor Portal (PBTP) is organized by the St. Jude Children's Research Hospital Neurobiology and Brain Tumor Program. Investigators have access to specialized resources, such as an integrated support structure for preclinical modeling, including patient-derived xenograft samples. The program consists of clinicians, radiation oncologists, neurobiologists, medicinal chemists, and other research faculty and staff. PBTP features molecular characterization for patient-derived orthotopic xenograft (PDOX) models of pediatric CNS tumors and reflects close to 10 years of effort to generate and extensively characterize in vivo models that faithfully recapitulate pediatric brain cancer diseases. The portal offers visualization tools that allow users to interrogate curated datasets and access models from our library of PDOX for functional studies of tumorigenesis or preclinical testing. +The findings of the project were published in [Acta Neuropathol](https://doi.org/10.1007/s00401-020-02171-5). ### Pediatric Cancer Genome Project -**DAU**: PCGP | **Tissue Type**: Paired Tumor-Normal | **Sequencing Type**: WGS, WES, RNA-Seq | **Samples**: 3031 | **[Additional Information About PCGP](https://stjude.cloud/studies/pediatric-cancer-genome-project)** +**DAU**: PCGP | **Tissue Type**: Paired Tumor-Normal | **Sequencing Type**: WGS, WES, RNA-Seq | **Samples**: 3,031 | **[Additional Information About PCGP](https://stjude.cloud/studies/pediatric-cancer-genome-project)** The Pediatric Cancer Genome Project (PCGP) is a collaboration between St. Jude Children's Research Hospital and the McDonnell Genome Institute at Washington University School of Medicine that sequenced the genomes of over 600 pediatric cancer patients. @@ -216,12 +332,18 @@ Real-time Clinical Genomics (RTCG) is a [first of its kind initiative](https://w **DAU**: SGP | **Tissue Type**: Germline Only | **Sequencing Type**: WGS | **Samples**: 807 | **[Additional Information About SGP](https://sickle-cell.stjude.cloud/)** SGP is a germline-only Data Set of Sickle Cell Disease (SCD) patients from birth to young adulthood. -The Sickle Cell Genome Project (SGP) is a collaboration between St. Jude Children’s Research Hospital and Baylor College of Medicine focused on identifying genetic modifiers that contribute to various health complications in SCD patients. +The Sickle Cell Genome Project (SGP) is a collaboration between St. Jude Children's Research Hospital and Baylor College of Medicine focused on identifying genetic modifiers that contribute to various health complications in SCD patients. Additional objectives include, but are not limited to, developing accurate methods to characterize germline structural variants in highly homologous globin locus and blood typing. ### St. Jude Life -**DAU**: SJLIFE | **Tissue Type**: Germline Only | **Sequencing Type**: WGS, WES | **Samples**: 4838 | **[Additional Information About SJLIFE](https://sjlife.stjude.org/)** +**DAU**: SJLIFE | **Tissue Type**: Germline Only | **Sequencing Type**: WGS, WES | **Samples**: 4,838 | **[Additional Information About SJLIFE](https://sjlife.stjude.org/)** St. Jude Lifetime (SJLIFE) is a longevity study from St. Jude Children's Research Hospital that aims to identify all inherited genome sequence and structural variants influencing the development of childhood cancer and occurrence of long-term adverse outcomes associated with cancer and cancer-related therapy. This cohort contains unpaired germline samples and does not contain tumor samples. + +### St. Jude Life Clonal Hematopoiesis + +**DAU**: PCGP | **Tissue Type**: — | **Sequencing Type**: SingleCell-WGS, Targeted | **Samples**: 3,192 + +The primary purpose of the St. Jude Lifetime Cohort Study (SJLIFE) Clonal Hematopoiesis dataset is to identify all inherited genome sequence and structural variants influencing the development of childhood cancer and occurrence of long-term adverse outcomes associated with cancer and cancer-related therapy. Additional objectives include, but are not limited to, the acquisition and analysis of additional genomic data, including epigenetic and gene expression data, data integration, and the development and validation of informatic and analytical solutions appropriate to the scale and nature of the project, as well as use of the data generated to answer important methodological and biological questions as specifically related to childhood malignancies. From 951061c03624a2bd3db4baca188944e9ac875b49 Mon Sep 17 00:00:00 2001 From: Meghann Kirk Date: Thu, 26 Mar 2026 11:46:14 -0500 Subject: [PATCH 16/17] revise: content --- content/2.cc4k/1.index.md | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/content/2.cc4k/1.index.md b/content/2.cc4k/1.index.md index 7357ad8c..83502901 100644 --- a/content/2.cc4k/1.index.md +++ b/content/2.cc4k/1.index.md @@ -6,18 +6,6 @@ navigation: CC4K (Cancer Classifications for Kids) provides a harmonized, computable pediatric cancer classification framework used across [St. Jude Cloud](https://stjude.cloud) and by the [CCDI Federated API](https://github.com/CBIIT/ccdi-federation-api). -## v0.5.1 - -Submitted: March XXX, 2026 - -Click [here]() for download. - -Version 0.5.1 provides a focused incremental update to the CC4K solid tumor hierarchy following the structural revisions introduced in v0.5. -This release adds four new disease classifications identified through newly curated case studies requiring formal classification within the tree. -These include the solid tumor entities Dyskeratosis Congenita, Chondromyxoid Fibroma, and Sinonasal Angiofibroma, as well as the hematologic malignancy Primary Mediastinal Large B-cell Lymphoma. -These nodes are introduced to ensure accurate representation of incoming samples and to maintain alignment with the [WHO 5th Edition Classification of Tumours: Paediatric Tumours](https://tumourclassification.iarc.who.int/) (Pediatric bluebook). -No structural reorganization of the tree was performed; rather, this update reflects a measured expansion within the existing Pediatric bluebook, preserving the chapter-based organizational principles established in v0.5. - ## v0.5 Submitted: March 11, 2026 From 81776d73b84e636d2a7f39a9233cc998bc2c811f Mon Sep 17 00:00:00 2001 From: stjudecloud-cloudy Date: Thu, 26 Mar 2026 11:51:46 -0500 Subject: [PATCH 17/17] ci: :rocket: creates preview environment for pr148 [skip ci] --- deployment/preview/pr148/app.yaml | 88 +++++++++++++++++++++++++++++++ 1 file changed, 88 insertions(+) create mode 100644 deployment/preview/pr148/app.yaml diff --git a/deployment/preview/pr148/app.yaml b/deployment/preview/pr148/app.yaml new file mode 100644 index 00000000..76c6ef36 --- /dev/null +++ b/deployment/preview/pr148/app.yaml @@ -0,0 +1,88 @@ +--- +apiVersion: helm.toolkit.fluxcd.io/v2beta1 +kind: HelmRelease +metadata: + name: docs + namespace: docs-pr148 +spec: + interval: 30m + chart: + spec: + chart: generic + version: 1.1.x + sourceRef: + kind: HelmRepository + name: stjudecloud + namespace: flux-system + interval: 1h + values: + nameOverride: docs + extraDeploy: + - | + apiVersion: v1 + kind: Service + metadata: + name: {{ template "common.names.fullname" . }}-oauth-bridge + labels: {{- include "common.labels.standard" . | nindent 4 }} + {{- if .Values.commonLabels }} + {{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }} + {{- end }} + {{- if .Values.commonAnnotations }} + annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} + {{- end }} + spec: + type: ExternalName + externalName: oauth2-proxy.oauth2-proxy + - | + --- + apiVersion: networking.k8s.io/v1 + kind: Ingress + metadata: + name: {{ .Release.Name }}-oauth + spec: + ingressClassName: nginx + rules: + - host: {{ .Values.ingress.hostname }} + http: + paths: + - backend: + service: + name: {{ template "common.names.fullname" . }}-oauth-bridge + port: + number: 80 + path: /oauth2 + pathType: ImplementationSpecific + tls: + - hosts: + - {{ .Values.ingress.hostname }} + secretName: {{ .Values.ingress.hostname }}-tls + image: + repository: stjudecloud/docs + tag: latest # {"$imagepolicy": "flux-system:docs-pr148:tag"} + podAnnotations: + linkerd.io/inject: enabled + config.linkerd.io/proxy-cpu-request: 20m + containerPorts: + http: 3000 + service: + ports: + - name: http + protocol: TCP + port: 3000 + targetPort: http + ingress: + enabled: true + hostname: docs-pr148.staging.stjude.cloud + path: / + annotations: + cert-manager.io/cluster-issuer: letsencrypt-prod + linkerd.io/inject: ingress + nginx.ingress.kubernetes.io/auth-signin: https://$host/oauth2/start?rd=$escaped_request_uri + nginx.ingress.kubernetes.io/auth-url: https://$host/oauth2/auth + nginx.ingress.kubernetes.io/service-upstream: "true" + nginx.ingress.kubernetes.io/enable-modsecurity: "true" + nginx.ingress.kubernetes.io/enable-owasp-core-rules: "true" + tls: + enabled: true + datadog: + enabled: false