diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 191c2fc1..f0787372 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -40,9 +40,9 @@ jobs: - name: Checkout uses: actions/checkout@v2 - name: Setup Python - uses: actions/setup-python@v1 + uses: actions/setup-python@v2 with: - python-version: 3.7 + python-version: 3.11.7 - name: Use pip cache uses: actions/cache@v2 with: diff --git a/.gitignore b/.gitignore index 235ee36d..1277018f 100644 --- a/.gitignore +++ b/.gitignore @@ -17,3 +17,6 @@ __pycache__ # Hail logs hail-*.log + +# dev data +/data diff --git a/.tool-versions b/.tool-versions new file mode 100644 index 00000000..14b04e3c --- /dev/null +++ b/.tool-versions @@ -0,0 +1,3 @@ +yarn 1.22.19 +node 16.13.1 +python 3.11.7 \ No newline at end of file diff --git a/data_pipeline/data_pipeline/config.py b/data_pipeline/data_pipeline/config.py index 5d6562a3..9d736e03 100644 --- a/data_pipeline/data_pipeline/config.py +++ b/data_pipeline/data_pipeline/config.py @@ -18,5 +18,6 @@ for section, option in REQUIRED_CONFIGURATION: value = pipeline_config.get(section, option) assert value +# pylint: disable=broad-exception-raised except (configparser.NoOptionError, AssertionError) as exc: raise Exception(f"Missing required configuration '{section}.{option}'") from exc diff --git a/data_pipeline/data_pipeline/datasets/ibd/ibd_gene_results.py b/data_pipeline/data_pipeline/datasets/ibd/ibd_gene_results.py index b48f77b5..1279b4f2 100644 --- a/data_pipeline/data_pipeline/datasets/ibd/ibd_gene_results.py +++ b/data_pipeline/data_pipeline/datasets/ibd/ibd_gene_results.py @@ -75,7 +75,14 @@ def prepare_gene_results(): final_results = final_results.annotate( group_results=hl.dict( final_results.group_results.map( - lambda group_result: (group_result.analysis_group, group_result.drop("analysis_group")) + lambda group_result: ( + hl.switch(group_result.analysis_group) + .when("ibd", "IBD") + .when("cd", "CD") + .when("uc", "UC") + .or_missing(), + group_result.drop("analysis_group"), + ) ) ) ) diff --git a/data_pipeline/data_pipeline/datasets/ibd/ibd_variant_results.py b/data_pipeline/data_pipeline/datasets/ibd/ibd_variant_results.py index 14faa612..1fdb3645 100644 --- a/data_pipeline/data_pipeline/datasets/ibd/ibd_variant_results.py +++ b/data_pipeline/data_pipeline/datasets/ibd/ibd_variant_results.py @@ -9,25 +9,36 @@ def prepare_variant_results(): # Get unique variants from results table variants = results.group_by(results.locus, results.alleles).aggregate() - # Looks like ac_control was mistakenly encoded as a string, e.g. "[83198, 0]" + # Select AC/AF numbers for the reference and alternate alleles results = results.annotate( - # pylint: disable-next=anomalous-backslash-in-string, unnecessary-lambda - ac_control=hl.map(lambda x: hl.int(x), results.ac_control.replace("\[", "").replace("\]", "").split(", ")) + ac_case=results.ac_case[1], + ac_ctrl=results.ac_control[1], + an_case=results.ac_case[0], + an_ctrl=results.ac_control[0], ) - # Select AC/AF numbers for the alternate allele - results = results.annotate(ac_case=results.ac_case[1], ac_ctrl=results.ac_control[1]) + # pylint: disable=broad-exception-raised + # TODO: also, in gene results I should figure out what is going on with all the + # bajillion fields I'm returning (0_001_03, etc) + # need to check the input schema of something like Epi25 vs IBD results = results.drop("ac_control") results = results.filter((results.ac_case > 0) | (results.ac_ctrl > 0)) - # Annotate variants with a struct for each analysis group + # Annotate variants with a struct for each analysis group, rename the analysis groups results = results.group_by("locus", "alleles").aggregate(group_results=hl.agg.collect(results.row_value)) results = results.annotate( group_results=hl.dict( results.group_results.map( - lambda group_result: (group_result.analysis_group, group_result.drop("analysis_group")) + lambda group_result: ( + hl.switch(group_result.analysis_group) + .when("ibd-control", "IBD") + .when("cd-control", "CD") + .when("uc-control", "UC") + .or_missing(), + group_result.drop("analysis_group"), + ) ) ) ) diff --git a/data_pipeline/data_pipeline/pipelines/prepare_datasets.py b/data_pipeline/data_pipeline/pipelines/prepare_datasets.py index 66ef01f3..2a4374c5 100644 --- a/data_pipeline/data_pipeline/pipelines/prepare_datasets.py +++ b/data_pipeline/data_pipeline/pipelines/prepare_datasets.py @@ -12,20 +12,23 @@ def prepare_dataset(dataset_id): output_path = pipeline_config.get("output", "staging_path") - gene_results_module = importlib.import_module( - f"data_pipeline.datasets.{dataset_id.lower()}.{dataset_id.lower()}_gene_results" - ) + # gene_results_module = importlib.import_module( + # f"data_pipeline.datasets.{dataset_id.lower()}.{dataset_id.lower()}_gene_results" + # ) variant_results_module = importlib.import_module( f"data_pipeline.datasets.{dataset_id.lower()}.{dataset_id.lower()}_variant_results" ) - gene_results = gene_results_module.prepare_gene_results() - validate_gene_results_table(gene_results) - gene_results.write(os.path.join(output_path, dataset_id.lower(), "gene_results.ht"), overwrite=True) + # gene_results = gene_results_module.prepare_gene_results() + # validate_gene_results_table(gene_results) + # gene_results.write(os.path.join(output_path, dataset_id.lower(), "gene_results.ht"), overwrite=True) variant_results = variant_results_module.prepare_variant_results() validate_variant_results_table(variant_results) - variant_results.write(os.path.join(output_path, dataset_id.lower(), "variant_results.ht"), overwrite=True) + variant_results.write(os.path.join(output_path, dataset_id.lower(), "variant_results.ht"), overwrite=True) + + print("exiting!") + exit(0) def main(): diff --git a/data_pipeline/pipeline_config.ini b/data_pipeline/pipeline_config.ini index 024b7daa..4e803f51 100644 --- a/data_pipeline/pipeline_config.ini +++ b/data_pipeline/pipeline_config.ini @@ -27,7 +27,7 @@ variant_annotations_path = gs://schema-browser/200911/2020-09-11_schema-browser- [IBD] gene_results_path = gs://ibd-browser/09-11-2023/gene_based_results.ht -variant_results_path = gs://ibd-browser/09-11-2023/variants_results.ht +variant_results_path = gs://ibd-browser/03-01-2024/variants_results.ht variant_annotations_path = gs://ibd-browser/09-11-2023/variants_annotations.ht [reference_data] @@ -43,10 +43,10 @@ exac_constraint_path = gs://gcp-public-data--gnomad/legacy/exac_browser/forweb_c [dataproc] project = exac-gnomad region = us-east1 -zone = us-east1-d +zone = us-east1-c # Because the data buckets are in a different project, use a service account that has access to them. service-account = erb-data-pipeline@exac-gnomad.iam.gserviceaccount.com [output] # Path for intermediate Hail files. -staging_path = gs://exome-results-browsers/data/231116 +staging_path = gs://exome-results-browsers/data/240325 diff --git a/data_pipeline/requirements-dev.txt b/data_pipeline/requirements-dev.txt index 4227bf24..30d83d4d 100644 --- a/data_pipeline/requirements-dev.txt +++ b/data_pipeline/requirements-dev.txt @@ -1,57 +1,44 @@ # -# This file is autogenerated by pip-compile with python 3.7 -# To update, run: +# This file is autogenerated by pip-compile with Python 3.9 +# by the following command: # # pip-compile requirements-dev.in # -astroid==2.12.12 +astroid==3.0.2 # via pylint black==22.10.0 # via -r requirements-dev.in -click==8.1.3 - # via black -dill==0.3.6 +click==8.1.7 + # via + # -c requirements.txt + # black +dill==0.3.7 # via # -c requirements.txt # pylint -importlib-metadata==5.0.0 - # via click -isort==4.3.21 +isort==5.13.2 # via pylint -lazy-object-proxy==1.8.0 - # via astroid -mccabe==0.6.1 +mccabe==0.7.0 # via pylint -mypy-extensions==0.4.3 +mypy-extensions==1.0.0 # via black -pathspec==0.10.1 +pathspec==0.12.1 # via black -platformdirs==2.5.2 +platformdirs==4.1.0 # via # black # pylint -pylint==2.15.5 +pylint==3.0.3 # via -r requirements-dev.in tomli==2.0.1 # via # black # pylint -tomlkit==0.11.6 +tomlkit==0.12.3 # via pylint -typed-ast==1.5.4 - # via - # astroid - # black -typing-extensions==4.4.0 +typing-extensions==4.9.0 # via # -c requirements.txt # astroid # black - # importlib-metadata # pylint -wrapt==1.14.1 - # via - # -c requirements.txt - # astroid -zipp==3.10.0 - # via importlib-metadata diff --git a/data_pipeline/requirements.in b/data_pipeline/requirements.in index 6d40a31b..79b5315e 100644 --- a/data_pipeline/requirements.in +++ b/data_pipeline/requirements.in @@ -1,2 +1,2 @@ -hail +hail==0.2.126 tqdm diff --git a/data_pipeline/requirements.txt b/data_pipeline/requirements.txt index d5e94560..a16adcbe 100644 --- a/data_pipeline/requirements.txt +++ b/data_pipeline/requirements.txt @@ -1,60 +1,69 @@ # -# This file is autogenerated by pip-compile with python 3.7 -# To update, run: +# This file is autogenerated by pip-compile with Python 3.9 +# by the following command: # # pip-compile requirements.in # -aiohttp==3.8.3 - # via - # aiohttp-session - # hail -aiohttp-session==2.7.0 +aiodns==2.0.0 + # via hail +aiohttp==3.9.1 # via hail -aiosignal==1.2.0 +aiosignal==1.3.1 # via aiohttp -async-timeout==4.0.2 +anyio==4.2.0 + # via azure-core +async-timeout==4.0.3 # via aiohttp asyncinit==0.2.4 # via hail -asynctest==0.13.0 +attrs==23.2.0 # via aiohttp -attrs==22.1.0 - # via aiohttp -avro==1.11.1 +avro==1.11.3 # via hail -azure-core==1.26.0 +azure-common==1.1.28 + # via azure-mgmt-storage +azure-core==1.29.6 # via # azure-identity + # azure-mgmt-core # azure-storage-blob # msrest -azure-identity==1.11.0 +azure-identity==1.15.0 + # via hail +azure-mgmt-core==1.4.0 + # via azure-mgmt-storage +azure-mgmt-storage==20.1.0 # via hail -azure-storage-blob==12.14.1 +azure-storage-blob==12.19.0 # via hail -bokeh==1.4.0 +bokeh==3.3.2 # via hail -boto3==1.25.5 +boto3==1.34.12 # via hail -botocore==1.28.5 +botocore==1.34.12 # via # boto3 # hail # s3transfer -cachetools==4.2.4 +cachetools==5.3.2 # via google-auth -certifi==2022.9.24 +certifi==2023.11.17 # via # msrest # requests -cffi==1.15.1 - # via cryptography -charset-normalizer==2.1.1 - # via - # aiohttp - # requests +cffi==1.16.0 + # via + # cryptography + # pycares +charset-normalizer==3.3.2 + # via requests +click==8.1.7 + # via typer commonmark==0.9.1 # via rich -cryptography==38.0.1 +contourpy==1.2.0 + # via bokeh +cryptography==41.0.7 # via # azure-identity # azure-storage-blob @@ -62,184 +71,183 @@ cryptography==38.0.1 # pyjwt decorator==4.4.2 # via hail -deprecated==1.2.13 +deprecated==1.2.14 # via hail -dill==0.3.6 +dill==0.3.7 # via hail -frozenlist==1.3.1 +exceptiongroup==1.2.0 + # via anyio +frozenlist==1.4.1 # via # aiohttp # aiosignal -google-api-core==2.10.2 - # via google-cloud-core -google-auth==1.35.0 + # hail +google-auth==2.26.1 # via - # google-api-core - # google-cloud-core - # google-cloud-storage + # google-auth-oauthlib # hail -google-cloud-core==1.7.3 - # via google-cloud-storage -google-cloud-storage==1.25.0 - # via hail -google-resumable-media==0.5.1 - # via google-cloud-storage -googleapis-common-protos==1.56.4 - # via google-api-core -hail==0.2.104 +google-auth-oauthlib==0.8.0 + # via hail +hail==0.2.126 # via -r requirements.in humanize==1.1.0 # via hail -hurry-filesize==0.9 - # via hail -idna==3.4 +idna==3.6 # via + # anyio # requests # yarl isodate==0.6.1 - # via msrest + # via + # azure-storage-blob + # msrest janus==1.0.0 # via hail -jinja2==3.0.3 - # via - # bokeh - # hail +jinja2==3.1.2 + # via bokeh jmespath==1.0.1 # via # boto3 # botocore -markupsafe==2.1.1 +jproperties==2.1.1 + # via hail +markupsafe==2.1.3 # via jinja2 -msal==1.20.0 +msal==1.26.0 # via # azure-identity # msal-extensions -msal-extensions==1.0.0 +msal-extensions==1.1.0 # via azure-identity msrest==0.7.1 - # via azure-storage-blob -multidict==6.0.2 + # via azure-mgmt-storage +multidict==6.0.4 # via # aiohttp # yarl -nest-asyncio==1.5.6 +nest-asyncio==1.5.8 # via hail -numpy==1.21.6 +numpy==1.26.3 # via # bokeh + # contourpy # hail # pandas # scipy oauthlib==3.2.2 # via requests-oauthlib -orjson==3.8.1 - # via hail -packaging==21.3 - # via bokeh -pandas==1.3.5 +orjson==3.9.10 # via hail -parsimonious==0.8.1 +packaging==23.2 + # via + # bokeh + # msal-extensions + # plotly +pandas==2.1.4 + # via + # bokeh + # hail +parsimonious==0.10.0 # via hail -pillow==9.3.0 +pillow==10.2.0 # via bokeh -plotly==5.10.0 +plotly==5.18.0 # via hail -portalocker==2.6.0 +portalocker==2.8.2 # via msal-extensions protobuf==3.20.2 - # via - # google-api-core - # googleapis-common-protos - # hail -py4j==0.10.9 + # via hail +py4j==0.10.9.5 # via pyspark -pyasn1==0.4.8 +pyasn1==0.5.1 # via # pyasn1-modules # rsa -pyasn1-modules==0.2.8 +pyasn1-modules==0.3.0 # via google-auth +pycares==4.4.0 + # via aiodns pycparser==2.21 # via cffi -pygments==2.13.0 +pygments==2.17.2 # via rich -pyjwt[crypto]==2.6.0 +pyjwt[crypto]==2.8.0 # via - # hail # msal -pyparsing==3.0.9 - # via packaging -pyspark==3.1.3 + # pyjwt +pyspark==3.3.4 # via hail python-dateutil==2.8.2 # via - # bokeh # botocore # pandas -python-json-logger==2.0.4 +python-json-logger==2.0.7 # via hail -pytz==2022.6 +pytz==2023.3.post1 # via pandas -pyyaml==6.0 - # via bokeh -requests==2.28.1 +pyyaml==6.0.1 + # via + # bokeh + # hail +regex==2023.12.25 + # via parsimonious +requests==2.31.0 # via # azure-core - # google-api-core # hail # msal # msrest # requests-oauthlib requests-oauthlib==1.3.1 - # via msrest + # via + # google-auth-oauthlib + # msrest rich==12.6.0 # via hail rsa==4.9 # via google-auth -s3transfer==0.6.0 +s3transfer==0.10.0 # via boto3 -scipy==1.7.3 +scipy==1.11.4 # via hail six==1.16.0 # via # azure-core - # azure-identity - # bokeh - # google-auth - # google-cloud-core - # google-resumable-media # isodate - # parsimonious + # jproperties # python-dateutil +sniffio==1.3.0 + # via anyio sortedcontainers==2.4.0 # via hail tabulate==0.9.0 # via hail -tenacity==8.1.0 +tenacity==8.2.3 # via plotly -tornado==6.2 +tornado==6.4 # via bokeh -tqdm==4.64.1 +tqdm==4.66.1 # via -r requirements.in -typing-extensions==4.4.0 +typer==0.9.0 + # via hail +typing-extensions==4.9.0 # via - # aiohttp - # async-timeout - # avro + # anyio # azure-core + # azure-storage-blob # janus - # rich - # yarl -urllib3==1.26.12 + # typer +tzdata==2023.4 + # via pandas +urllib3==1.26.18 # via # botocore # requests -uvloop==0.17.0 +uvloop==0.19.0 # via hail -wrapt==1.14.1 +wrapt==1.16.0 # via deprecated -yarl==1.8.1 +xyzservices==2023.10.1 + # via bokeh +yarl==1.9.4 # via aiohttp - -# The following packages are considered to be unsafe in a requirements file: -# setuptools diff --git a/data_pipeline/write_results_files.py b/data_pipeline/write_results_files.py index 62df1d45..9f999c49 100755 --- a/data_pipeline/write_results_files.py +++ b/data_pipeline/write_results_files.py @@ -73,6 +73,7 @@ def split_data(row): def write_data_files(table_path, output_directory, genes=None): if output_directory.startswith("gs://"): + # pylint: disable=broad-exception-raised raise Exception("Cannot write output to Google Storage") ds = hl.read_table(table_path) diff --git a/package.json b/package.json index e13eb29d..a0b29c74 100644 --- a/package.json +++ b/package.json @@ -46,5 +46,6 @@ "webpack": "^4.42.1", "webpack-cli": "^3.3.11", "webpack-dev-server": "^3.10.1" - } + }, + "dependencies": {} } diff --git a/src/browsers/base/OtherStudies.js b/src/browsers/base/OtherStudies.js index a60b306e..4f5c7e8e 100644 --- a/src/browsers/base/OtherStudies.js +++ b/src/browsers/base/OtherStudies.js @@ -126,5 +126,22 @@ export default () => (

)} + + {datasetConfig.datasetId !== 'IBD' && ( + <> +

+ IBD - IBD +

+

+ The Inflammatory Bowel Disease (IBD) Sequencing Consortium is a global collaboration + dedicated to aggregating, generating, and analyzing high-throughput sequencing data of + inflammatory bowel disease patients to improve our understanding of disease architecture + and advance gene discovery. +

+

+ +

+ + )} ) diff --git a/src/browsers/geneResultComponents.js b/src/browsers/geneResultComponents.js index 18280e57..3a26c1f7 100644 --- a/src/browsers/geneResultComponents.js +++ b/src/browsers/geneResultComponents.js @@ -2,10 +2,12 @@ import ASCGeneResults from './asc/ASCGeneResults' import BipExGeneResults from './bipex/BipExGeneResults' import Epi25GeneResults from './epi25/Epi25GeneResults' import SCHEMAGeneResults from './schema/SCHEMAGeneResults' +import IBDGeneResults from './ibd/IBDGeneResults' export default { ASC: ASCGeneResults, BipEx: BipExGeneResults, Epi25: Epi25GeneResults, SCHEMA: SCHEMAGeneResults, + IBD: IBDGeneResults, } diff --git a/src/browsers/ibd/IBDAboutPage.js b/src/browsers/ibd/IBDAboutPage.js new file mode 100644 index 00000000..02cdcc66 --- /dev/null +++ b/src/browsers/ibd/IBDAboutPage.js @@ -0,0 +1,14 @@ +import React from 'react' + +import InfoPage from '../base/InfoPage' +import StyledContent from '../base/StyledContent' + +import aboutPageContent from './content/about.md' + +const AboutPage = () => ( + + + +) + +export default AboutPage diff --git a/src/browsers/ibd/IBDBrowser.js b/src/browsers/ibd/IBDBrowser.js new file mode 100644 index 00000000..3c84ad3d --- /dev/null +++ b/src/browsers/ibd/IBDBrowser.js @@ -0,0 +1,125 @@ +import React from 'react' + +import Browser from '../base/Browser' +import { renderFloat } from '../base/tableCells' + +import IBDAboutPage from './IBDAboutPage' +import IBDHomePage from './IBDHomePage' +import IBDTermsPage from './IBDTermsPage' +import IBDVariantFilter from './IBDVariantFilter' +import vepConsequences from '../base/vepConsequences' + +const variantConsequences = [...vepConsequences] + +// const renderOddsRatio = (value) => { +// if (value === null) { +// return '' +// } +// if (value === 'Infinity') { +// return '∞' +// } +// if (value === 0) { +// return '0' +// } +// return value.toPrecision(3) +// } + +const IBDBrowser = () => ( + renderFloat(value), + }, + { + key: 'lof_missense_singleton_P', + heading: 'lof missense singleton P', + minWidth: 110, + render: (value) => renderFloat(value), + }, + { + key: 'lof_0_001_P', + heading: 'lof 0_001 P', + minWidth: 110, + render: (value) => renderFloat(value), + }, + { + key: 'lof_missense_0_001_P', + heading: 'lof missense 0_001 P', + minWidth: 110, + render: (value) => renderFloat(value), + }, + { + key: 'lof_missense_0_001_BETA', + heading: 'lof missense 0_001 beta', + minWidth: 110, + render: (value) => renderFloat(value), + }, + ]} + // TODO: + defaultVariantAnalysisGroup="ibd-control" + variantAnalysisGroupOptions={['cd-control', 'ibd-control', 'uc-control']} + variantResultColumns={[ + { + // TODO: change back to p value when new data is uploaded + // columns were mistakenly swapped in old input data + // key: 'group_result.p', + key: 'group_result.chi_sq_stat', + heading: 'P\u2011Value', + minWidth: 75, + render: (value) => renderFloat(value), + }, + { + // TODO: change back to chi_sq when new data is uploaded + // columns were mistakenly swapped in old input data + // key: 'group_result.chi_sq_stat', + key: 'group_result.p', + heading: 'χ²', + minWidth: 65, + render: (value) => renderFloat(value), + }, + ]} + variantConsequences={variantConsequences} + variantCustomFilter={{ + component: IBDVariantFilter, + defaultFilter: { + onlyInAnalysis: false, + }, + applyFilter: (variants, { onlyInAnalysis }) => { + if (onlyInAnalysis) { + return variants.filter((v) => v.group_result.in_analysis) + } + return variants + }, + }} + renderVariantAttributes={({ cadd, mpc, polyphen }) => [ + { label: 'PolyPhen', content: polyphen === null ? '–' : polyphen }, + { label: 'MPC', content: mpc === null ? '–' : mpc }, + { label: 'CADD', content: cadd === null ? '–' : cadd }, + ]} + /> +) + +export default IBDBrowser diff --git a/src/browsers/ibd/IBDGeneResults.js b/src/browsers/ibd/IBDGeneResults.js new file mode 100644 index 00000000..ba1ab8b3 --- /dev/null +++ b/src/browsers/ibd/IBDGeneResults.js @@ -0,0 +1,139 @@ +import PropTypes from 'prop-types' +import React from 'react' +import styled from 'styled-components' + +import { BaseTable, Tabs } from '@gnomad/ui' + +import HelpButton from '../base/HelpButton' + +const Table = styled(BaseTable)` + min-width: 325px; +` + +// const renderOddsRatio = (value) => { +// if (value === null) { +// return '-' +// } +// if (value === 'Infinity') { +// return '∞' +// } +// if (value === 0) { +// return '0' +// } +// return value.toPrecision(3) +// } + +// const renderPVal = (pval) => { +// console.log(pval) +// // if (pval === null) { +// // return '-' +// // } +// // if (pval === 0) { +// // return '2.2e-16' +// // } +// // return pval.toPrecision(3) +// return 1 +// } + +const IBDGeneResult = ({ result }) => ( +
+ + + + + + + + + + + + + + {/* */} + {/* */} + {/* */} + {/* */} + {/* */} + + + + {/* + + + */} + + +
CategoryCase CountControl CountP-ValOdds Ratio
Protein-truncating{result.ptv_case_count === null ? '-' : result.ptv_case_count}{result.ptv_control_count === null ? '-' : result.ptv_control_count}{renderPVal(result.ptv_pval)}{renderPVal(result)}{renderOddsRatio(result.ptv_OR)}
Damaging Missense + {result.damaging_missense_case_count === null + ? '-' + : result.damaging_missense_case_count} + + {result.damaging_missense_control_count === null + ? '-' + : result.damaging_missense_control_count} + {renderPVal(result.damaging_missense_pval)}{renderOddsRatio(result.damaging_missense_OR)}
+ +

+ Total cases: {result.n_cases} +

+

+ Total controls: {result.n_controls} +

+
+) + +IBDGeneResult.propTypes = { + result: PropTypes.shape({ + n_cases: PropTypes.number, + n_controls: PropTypes.number, + damaging_missense_case_count: PropTypes.number, + damaging_missense_control_count: PropTypes.number, + damaging_missense_pval: PropTypes.number, + damaging_missense_OR: PropTypes.number, + ptv_case_count: PropTypes.number, + ptv_control_count: PropTypes.number, + ptv_pval: PropTypes.number, + ptv_OR: PropTypes.number, + }).isRequired, +} + +const IBDGeneResults = ({ results }) => ( + <> +

+ Gene Result{' '} + +

+ These tables display the case-control gene burden for the full IBD cohort (IBD) and + for each of the primary irritable bowel disease types (Crohn's Disease, CD; and + Ulcerative Colitis, UC). Cases in the IBD table include all 50,126 IBD patients + (28,718 with CD, 17,991 with CD, and 3,417 with other IBD syndromes). Each of the case + groups is compared against over 97,000 control samples. +

+ + } + /> +

+ ({ + id: group, + label: group, + render: () => + results[group] ? ( + + ) : ( +

No result for {group} in this gene.

+ ), + }))} + /> + +) + +IBDGeneResults.propTypes = { + results: PropTypes.objectOf(PropTypes.object).isRequired, +} + +export default IBDGeneResults diff --git a/src/browsers/ibd/IBDHomePage.js b/src/browsers/ibd/IBDHomePage.js new file mode 100644 index 00000000..d2f8da8a --- /dev/null +++ b/src/browsers/ibd/IBDHomePage.js @@ -0,0 +1,43 @@ +import React from 'react' +import styled from 'styled-components' + +import { Page, PageHeading } from '@gnomad/ui' + +import DocumentTitle from '../base/DocumentTitle' +import Link from '../base/Link' +import Searchbox from '../base/Searchbox' +import StyledContent from '../base/StyledContent' + +import homePageContent from './content/homepage.md' + +const HomePageHeading = styled(PageHeading)` + margin: 3em 0 1em; +` + +const HomePageWrapper = styled(Page)` + max-width: 740px; + font-size: 16px; + + p { + margin: 0 0 1.5em; + line-height: 1.5; + } +` + +const IBDHomePage = () => ( + + + + IBD: Inflammatory Bowel Disease exome meta-analysis consortium + + + +

+ Or view all results +

+ + +
+) + +export default IBDHomePage diff --git a/src/browsers/ibd/IBDTermsPage.js b/src/browsers/ibd/IBDTermsPage.js new file mode 100644 index 00000000..7844d28a --- /dev/null +++ b/src/browsers/ibd/IBDTermsPage.js @@ -0,0 +1,14 @@ +import React from 'react' + +import InfoPage from '../base/InfoPage' +import StyledContent from '../base/StyledContent' + +import termsPageContent from './content/terms.md' + +const TermsPageContent = () => ( + + + +) + +export default TermsPageContent diff --git a/src/browsers/ibd/IBDVariantFilter.js b/src/browsers/ibd/IBDVariantFilter.js new file mode 100644 index 00000000..ece09216 --- /dev/null +++ b/src/browsers/ibd/IBDVariantFilter.js @@ -0,0 +1,24 @@ +import PropTypes from 'prop-types' +import React from 'react' + +import { Checkbox } from '@gnomad/ui' + +const IBDVariantFilter = ({ value, onChange }) => ( + { + onChange({ ...value, onlyInAnalysis }) + }} + /> +) + +IBDVariantFilter.propTypes = { + value: PropTypes.shape({ + onlyInAnalysis: PropTypes.bool.isRequired, + }).isRequired, + onChange: PropTypes.func.isRequired, +} + +export default IBDVariantFilter diff --git a/src/browsers/ibd/content/about.md b/src/browsers/ibd/content/about.md new file mode 100644 index 00000000..8a9add08 --- /dev/null +++ b/src/browsers/ibd/content/about.md @@ -0,0 +1,155 @@ +--- +title: About IBD +--- + +The Inflammatory Bowel Disease (IBD) Sequencing Consortium is a global collaboration dedicated to aggregating, generating, and analyzing high-throughput sequencing data of inflammatory bowel disease patients to improve our understanding of disease architecture and advance gene discovery. The consortium was formed in 2014 with a commitment to data sharing, diversity, and inclusivity - we hope that the findings from this study and others like it will provide a foundation for further investigation of disease mechanisms and therapeutic discovery. This browser is part of that overall effort to display and share these results with the wider scientific community. Partnering with the Broad Institute, the IBD Sequencing Consortium has sequenced more than 50,000 patients as of 2024 from 50 research cohorts across the world. + +The IBD phase 1 dataset (hg38) analyzes exomes from 28,718 Crohn’s disease cases, 17,991 Ulcerative Colitis cases, 3,417 Inflammatory Bowel disease cases, and over 97,000 control samples. + +In earlier versions of these analyses ([e.g., 2022 paper](https://pubmed.ncbi.nlm.nih.gov/36038634/)), the vast majority of samples were of European and Ashkenazi Jewish ancestry. At present, our sequencing efforts are particularly focused on increasing diversity study and focus on adding substantial numbers of individuals - particularly of African-American, Latin American, and Asian ancestry. Because sequence data was generated with various exome capture technologies over a span of ten years, we adapted and developed methods to reduce possible confounders and incorporated this information during the quality control and analysis steps. The first results have provided genome-wide significant results associating ultra-rare protein-coding variants in individual genes to risk of Crohn’s disease. Later releases are planned with a larger number of samples that will further increase power and will be released here before any publication. + +We thank the tens of thousands of patients and families who generously contributed to our effort. This project is made possible by the generosity of many funders, including the Helmsley Charitable Foundation and the National Human Genome Research Institute (NHGRI), and the leadership of its members. We are incredibly grateful to all the [IIBDGC consortium members](https://www.ibdgenetics.org/) for their gracious contribution to make this collaboration possible. We welcome any feedback! You can contact us by [email](mailto:TODO:@broadinstitute.org) if you have any questions or suggestions. + +Individual-level data is available for approved researchers via the dbgap accession [phs001642.v2.v1](https://www.ncbi.nlm.nih.gov/projects/gap/cgi-bin/study.cgi?study_id=phs001642.v2.p1): Center for Common Disease Genomics [CCDG] - Autoimmune: Inflammatory Bowel Disease (IBD) Exomes and Genomes. + +### Data Production and Analysis + +- Aleksejs Sazonovs +- Christine R. Stevens +- Mingrui Yu +- Kai Yuan +- Qian Zhang + +### Browser + +- Riley Grant +- Matthew Solomonson + +### Principal Investigators + +- Hailiang Huang +- Carl A. Anderson +- Mark J. Daly + +## Contributing Collections and Consortia + +**International IBD Genetics Consortium** + +Maria T. Abreu, Jean-Paul Achkar, Vibeke Andersen, Charles N. Bernstein, Steven R. Brant, Luis Bujanda, Siew Chien Ng, Judy H. Cho, Mark J. Daly, Lee A. Denson, Richard H. Duerr, Lynnette R. Ferguson, Denis Franchimont, Andre Franke, Richard Gearry, Hakon Hakonarson, Jonas Halfvarson, Caren Heller, Hailiang Huang, Antonio Julià, Judith Kelsen, Hamed Khalili, Subra Kugathasan, Juozas Kupcinskas, Anna Latiano, Edouard Louis, Reza Malekzadeh, Jacob L. McCauley, Dermot P.B. McGovern, Christopher J. Moran, David T. Okou, Tim Orchard, Aarno Palotie, Miles Parkes, Joel Pekow, Uroš Potočnik, Graham Radford-Smith, John D. Rioux, Manuel A. Rivas, Gerhard Rogler, Bruce Sands, Mark S. Silverberg, Harry Sokol, Séverine Vermeire, Rinse K. Weersma, Ramnik J. Xavier + +**Ashkenazi Jewish Collections** + +Gil Atzmon, Nir Barzilai, Benjamin Glaser, Chaim Jalas, Harry Ostrer, Nikolas Pontikos, Ann E. Pulver, Dan Turner + +**SUIVITHEQUE Biobank, France** + +Laurent Beaugerie, Jacques Cosnes, Philippe Seksik, Harry Sokol + +**RISK Collection** + +David J. Cutler, Subra Kugathasan, David T. Okou, Hari Somineni + +The RISK Stratification Study enrolled 1,800 patients from 28 clinics, focusing on 913 children with Crohn's disease enrolled at diagnosis and complication-free 90 days after diagnosis. This 36-month prospective inception cohort study included well-documented clinical, demographic, and biological sample collection every six months on all patients for three years with continuing follow-up for five years. + +**The Netherlands Collection** + +Andrea E. van der Meulen, Bas Oldenburg, Marieke J. Pierik, Cyriel Y. Ponsioen, Michiel D. Voskuil, Rinse K. Weersma + +**Lithuanian Collection** + +Juozas Kupcinskas, Jurgita Skeiceviciene + +**Mount Sinai Crohn’s and Colitis Registry (MSCCR)** + +Bruce Sands + +**PROTECT Collection** + +Lee A Denson, Jeffrey S Hyams + +**Global Microbiome Conservancy** + +Eric Alm, Mathieu Groussin + +GMC aims to advance our knowledge of the human microbiome and boost global research capacity. By curating and sharing a highly representative collection of microbiome samples and data, we strive to catalyze research worldwide. Blood samples were provided for sequencing. + +**Massachusetts General Brigham Collections** + +Daniel Chung, Helena Lau, Ramnik Xavier, Ashwin N. Ananthakrishna, Andrew Chan + +The Prospective Registry in IBD Study at MGH (PRISM) registry includes over 3,000 enrolled IBD patients and healthy controlled individuals. The GI Disease and Endoscopy Registery (GIDER) …. Massachusetts General Brigham Biobank… + +**REMIND Network, France** + +Matthieu Allez + +A prospective cohort of CD patients (NCT03458195) included at time of ileocolonic resection, recruited in 15 centers from the REMIND network with extensive biobanking at surgery and post-operative endoscopy. The aims are to identify predictors of postoperative endoscopic recurrence and to understand the pathophysiology of recurrence better. + +**Canadian IBD Collections** + +Charles N. Bernstein, Alain Bitton, Chloé Lévesque, Paul Moayyedi, Jean Paquette, John D. Rioux + +The Canadian [IMAGINE](https://imaginespor.com/) cohort provided by Dr. Paul Moayyedi acknowledges the Charles Wolfson Charitable Trust and the Canadian Institute for Health Research Grants SPOR-RN279389–358033. The [Manitoba IBD Registry](https://www.ibdmanitoba.org/the-ibd-research-registry) from Charles N. Bernstein utilizes a large registry of enrolled volunteers for the Manitoba IBD Cohort Study with more than 7500 Manitobans registered. The [iGenoMed](https://www.genomebc.ca/projects/ibd-genomic-medicine-consortium-igenomed-translating-genetic-discoveries-into-a-personalized-approach-to-treating-the-inflammatory-bowel-diseases) was cohort provided by John Rioux. [Genome Quebec](https://www.genomequebec.com/genizon-biobank/) is a cohort of Crohn's disease patients, and healthy controls, of French Canadian origin recruited in the Province of Quebec, Canada. Previously collected by Genizon Biosciences Inc. but now part of a public biobank overseen by Génome Québec. [NIDDK-Quebec](https://ibdgc.uchicago.edu/grc/montreal/) is a cohort of Crohn's disease patients, and healthy controls (spouses and/or "best friend") recruited in the Province of Quebec, Canada as part of the activities of the Montreal-Boston Genetic Research Center (GRC, Rioux is PI), one of six GRCs of the NIDDK-funded IBD Genetics Consortium. Patients and controls were recruited at university-based hospitals throughout the province by gastroenterologists specializing in IBD who formed the Quebec IBD Genetics Consortium. + +**SPARC IBD Network** + +Meenakshi Bewtra, Stacie Bishop, Shrinivas Bishu, Matthew Bohm, Loren P. Brook, Alex Bruss, Freddy Caldera, Matthew Cioba, Raymond K. Cross, Sushila Dala, Themistocles Dassopoulos, Parakkal Deepak, Richard H. Duerr, Monika Fisher, Rayna Haque, Peter Higgins, Austin Katona, Manreet Kaur, Baylee Kinnett, Joshua Korzenik, James D. Lewis, Anna Markert, Brice Messenger, Vessela Miladinova, Lizbeth Nunez, Sirimon O’Charoen, Maia Paul, Joel Pekow, Lilani Perera, Laura E. Raffals, Gormon Joel Reynolds, William B. Sabol, Sumona Saha, Elizabeth A. Scoville, Richa Shukla, Scott B. Snapper, Katerina Wells, Uni Wong, Justine Young, Andres J. Yarur +Study of a Prospective Adult Research Cohort (SPARC) with IBD – is a multicentered longitudinal study of adult IBD patients. The study aims to find predictors of response to therapy and predictors of relapse that will lead to precision medicine strategies and new therapeutic targets that will improve the quality of life of patients with IBD. Data and biosamples are used for basic, clinical, and translational research. We acknowledge the Crohn's & Colitis Foundation's IBD Plexus Program — the results published here are in part based on data obtained from the IBD Plexus program of the Crohn’s & Colitis Foundation. + +**Miami IBD Cohort** + +Maria Abreu, Ashley Beecham, Oriana M. Damas, Jake L. McCauley + +The Miami IBD Cohort comprises IBD patients from an academic Crohn’s and Colitis referral center (the University of Miami Crohn’s and Colitis Center) and an extensive, community-based practice (GastroHealth) in South Florida. The Miami cohort was supported by the National Institute of Diabetes and Digestive and Kidney Disease Grant (R01DK104844). + +**Cedars-Sinai IBD Consortium** + +Lea Ann Chen, Philip Fleshner, Talin Haritunians, Carol Landers, Dermot P.B. McGovern, Gil Melmed, Emebet Mengesha, Shervin Rabizadeh, Stephan Targan, Eric Vasiliauskas + +The Cedars-Sinai MIRIAD Biorepository at Cedars-Sinai recruits adult and pediatric IBD patients who attend the IBD Centers at Cedars-Sinai and through collaborators worldwide (particularly East Asia). Both adult and pediatric subjects are recruited, while most subjects are of Northern European and Ashkenazi Jewish emphasis on African-American and Hispanic recruitment (the latter through a collaboration with the University of Puerto Rico). The Cedars-Sinai IBD study was supported by the Cedars-Sinai MIRIAD IBD Biobank. The MIRIAD IBD Biobank receives funding from the Widjaja Foundation Inflammatory Bowel and Immunobiology Research Institute, NIDDK grants P01DK046763 and U01DK062413, and The Leona M. and Harry B. Helmsley Charitable Trust. + +**Nurses' Health Study ([NHS](https://nurseshealthstudy.org/))** + +Andrew Chan, Hamed Khalili + +NHS is among the largest prospective investigations into the risk factors for major chronic diseases in women. IBD samples were selected from this study; established in 1976, the studies are now in their third generation and have more than 280,000 participants. + +**Finland IBD Collections** + +Martti Farkkila, Mikko Hiltunen, Eija Hämäläinen, Kimmo Kontula, Jukka T. Koskela, Aarno Palotie, Päivi Saavalainen + +Farkkila cohort description? The population-based [FINRISK](https://thl.fi/en/research-and-development/research-and-projects/the-national-finrisk-study) study has been followed up for IBD and other disease end-points using annual record linkage with the Finnish National Hospital Discharge Register, the National Causes-of-Death Register, and the National Drug Reimbursement Register. Controls were chosen to have a high polygenic risk score for IBD without an IBD diagnosis. A detailed description of the FINRISK cohort can be found at Borodulin et al. The FINRISK controls were part of the FINRISK studies supported by THL (formerly KTL: National Public Health Institute) through budgetary funds from the government, with additional funding from institutions such as the Academy of Finland, the European Union, ministries, and national and international foundations and societies to support specific research purposes. + +**NIDDK IBD Genetics Consortium** + +Manisha Bajpai, Arthur M. Barrie III, David G. Binion, Sondra Birch, Alain Bitton, Krzysztof Borowski, Gregory Botwin, Gabrielle Boucher, Steven R. Brant, Ezra Burnstein, Wei Chen, Judy H. Cho, Roberto Cordero, Justin Côté-Daigneault, Mark J. Daly, Lisa W. Datta, Jeffrey M. Dueker, Richard H. Duerr, Melissa Filice, Philip Fleshner, Kyle Gettler, Mamta Giri, Philippe Goyette, Ke Hao, Talin Haritunians, Yuval Itan, Elyse Johnston, Carol Landers, Mark Lazarev, Dalin Li, Dermot P.B. McGovern, Emebet Mengesha, Miriam Merad, Raquel Milgrom, Shadi Nayeri, John D. Rioux, Klaudia Rymaszewski, Ksenija Sabic, William B. Sabol, Bruce Sands, L. Philip Schumm, Marc B. Schwartz, Mark S. Silverberg, Claire L. Simpson, Joanne M. Stempak, Christine R. Stevens, Stephan R. Targan, Ramnik J. Xavier + +The NIDDK Inflammatory Bowel Disease Genetics Consortium (IBDGC) was created in 2002 by the National Institute of Diabetes, Digestive, and Kidney diseases (NIDDK) to advance knowledge on inflammatory bowel diseases, specifically Crohn’s Disease and Ulcerative Colitis. The Consortium consists of six genetic research centers (GRC) and a data coordinating center (DCC) that prospectively recruits a combination of cases, controls, and trios to gather a large collection of samples and linked phenotype information. DNA samples are used to conduct genetic linkage and association studies. + +**Pediatric IBD Collections** + +Christopher J. Moran, Harland S. Winter, Noor Dawany, Marcella Devoto, Judith Kelsen, Barbara S. Kirschner (Chicago)? + +Pediatric IBD samples were provided from US hospital centers specializing in pediatric gastroenterology. The MGH Pediatric Inflammatory Bowel Disease Center provides care for children and adolescents with inflammatory bowel diseases (Ulcerative colitis, Indeterminate colitis, and Crohn’s disease). CHOP's Center for Pediatric Inflammatory Bowel Disease … + +**SHARE Consortium** + +Ashwin N. Ananthakrishnan, William A. Faubion, Bana Jabri, Michael D. Kappelman, Sergio A. Lira, Millie Long, Rodney D. Newberry, Inga Peter, Robert S. Sandler, R. Balfour Sartor, Shehzad Z. Sheikh, Ramnik J. Xavier + +Investigators from seven major IBD centers formed the Sinai Helmsley Alliance for Research Excellence (SHARE) in 2010 to integrate information from basic science, epidemiology and information sciences to advance IBD research across multiple high-volume centers. The SHARE consortium would like to acknowledge The Leona M. and Harry B. Helmsley Charitable Trust. + +**German IBD Consortium** + +Andre Franke, Stefan Schreiber, Bernd Bokemeyer, Eva Ellinghaus, Siegfried Goerg, Marc Hoeppner, Matthias Laudes, Britt-Sabina Loescher, Sandra May + +The CCIM German cohort was recruited through the Comprehensive Center for Inflammation Medicine (CCIM) of the University Hospital. Tertiary referral center with an IBD ambulance. The German CCIM cohort acknowledges the German Excellence Initiative EXC 2167 and IMI Programm of the EU ("3TR") and the European Regional Development Fund 01.2.2-LMT-K-718-04-0003. The German IBD Consortium would like to acknowledge the CCIM that receives infrastructure support from the DFG Cluster of Excellence "Precision Medicine in Chronic Inflammation" (PMI). + +**Belgium IBD Consortium** + +Isabelle Cleynen, Denis Franchimont, Michel Georges, Claire Liefferinckx, Edouard Louis, Myriam Mni, Souad Rahmouni, Séverine Vermeire, Sare Verstockt + +The Belgian IBD Genetics Consortium is composed of IBD clinical and research groups of ULG, ULB and ULiège. The Belgium Consortium would like to acknowledge individual study support from FNRS (Fond National de la Recherche Scientifique, Belgium), funding from H2020 (SYSCID), FNRS (EOS N°30770923 / PDRs N° T.0190.19 and T.0096.19 / CDR N°J.0173.18) and Welbio (COSIBD) and Myriam Mni, Emilie Théâtre, François Crins, Julia Dmitrieva, Valérie Deffontaine, Yukihide Momozawa and GIGA-Genomics core facility for assistance and technical assistance. The Belgium IBD Leuven center is a tertiary referral center for IBD. Annually 3.000 patients are followed up in the clinic (2/3 are CD and 1/3 is UC). Patients are recruited via the IBD clinic to participate in the research on IBD by providing biomaterials and clinical data, stored in the electronic clinical records (KWS or Clinical Working Station) to the IBD Biobank (CCare, PI: Séverine Vermeire, EC approval). Controls are also recruited into CCare as healthy spouses of the included patients and through advertisements on campus. IBD Leuven is part of the Belgian IBD Genetics Consortium, together with the IBD clinical and research groups of ULG, ULB and ULiège. The Belgium IBD ULG center includes IBD clinics from Erasme hospital, Brussels, Belgium (2800 IBD patients, 650 patients on biologics) within the Belgium IBD Consortium + +**Control Collections** + +The MIGEN Leicester and Ottawa Controls were ascertained from the control subjects being recruited as part of the UK Aneurysm Growth Study (UKAGS) and controls from the Ottawa Heart Study; a cross-sectional case-control study designed to identify genes that predispose to angiographically defined coronary artery disease. The ASC-NIMH Controls are from the ARRA Autism Sequencing Collaboration, created in 2010 to bring together an expert large-scale sequencing center and a collaborative network of research labs focused on the genetics of autism. These groups worked together to utilize dramatic new advances in DNA sequencing technology to reveal the genetic architecture of autism through a comprehensive examination of the exotic sequence of all genes. The Autism Sequencing Consortium (ASC) was founded by Joseph D. Buxbaum and colleagues as an international group of scientists who share autism spectrum disorder (ASD) samples and genetic data. The ASC-NIMH-Controls cohort was first supported by a cooperative agreement grant to four lead sites funded by the National Institute of Mental Health (U01MH100233, U01MH100209, U01MH100229, U01MH100239), and renewed NIMH grants (U01MH111661, U01MH111660, U01MH111658 and U01MH111662), with additional support from the National Human Genome Research Institute through the Broad Center for Common Disease Genomics (UM1HG008895, Mark Daly, PI). The UK-IRL-UCL Controls samples were extracted from EBV transformed peripheral blood lymphocytes from unscreened healthy British blood donors and from whole blood samples from healthy volunteers of UK or Irish ancestry. They were collected and sequenced with support from the Neuroscience Research Charitable Trust, the Central London NHS (National Health Service) Blood Transfusion Service, and the National Institute of Health Research (NIHR) funded Mental Health Research Network. Sequencing was supported by the NHGRI Centers for Common Disease Genomics Genomics (CCDG) grant (UM1HG008895) and the Stanley Center for Psychiatric Research. The Epi25 Collaborative Controls are from a group of more than 200 partners from over 50 research cohorts from around the world formed to investigate the genetics of epilepsy. Whole exome sequencing data from the following Epi25 cohorts were included in these analyses: Germany: Bonn; Germany: Kiel; Germany: Tuebingen; Germany: Leipzig; Ireland: Dublin; USA: Philadelphia/CHOP; USA: EPGP; USA: Human Epilepsy Project; and USA: Penn/CHOP. Health 2000, SUPER diff --git a/src/browsers/ibd/content/homepage.md b/src/browsers/ibd/content/homepage.md new file mode 100644 index 00000000..2b7f0ab9 --- /dev/null +++ b/src/browsers/ibd/content/homepage.md @@ -0,0 +1,15 @@ +Examples - Gene name: [NOD2](/gene/ENSG00000167207), Ensembl gene ID: [ENSG00000167207](/gene/ENSG00000167207) + +The Inflammatory Bowel Disease (IBD) Sequencing Consortium is a global collaboration dedicated to aggregating, generating, and analyzing high-throughput sequencing data of inflammatory bowel disease patients to improve our understanding of disease architecture and advance gene discovery. The consortium was formed in 2014 with a commitment to data sharing, diversity, and inclusivity - we hope that the findings from this study and others like it will provide a foundation for further investigation of disease mechanisms and therapeutic discovery. This browser is part of that overall effort to display and share these results with the wider scientific community. Partnering with the Broad Institute, the IBD Sequencing Consortium has sequenced more than 50,000 patients as of 2024 from 50 research cohorts across the world. + +The IBD phase 1 dataset (hg38) analyzes exomes from 28,718 Crohn’s disease cases, 17,991 Ulcerative Colitis cases, 3,417 Inflammatory Bowel disease cases, and over 97,000 control samples. + +In earlier versions of these analyses ([e.g., 2022 paper](https://pubmed.ncbi.nlm.nih.gov/36038634/)), the vast majority of samples were of European and Ashkenazi Jewish ancestry. At present, our sequencing efforts are particularly focused on increasing diversity study and focus on adding substantial numbers of individuals - particularly of African-American, Latin American, and Asian ancestry. Because sequence data was generated with various exome capture technologies over a span of ten years, we adapted and developed methods to reduce possible confounders and incorporated this information during the quality control and analysis steps. The first results have provided genome-wide significant results associating ultra-rare protein-coding variants in individual genes to risk of Crohn’s disease. Later releases are planned with a larger number of samples that will further increase power and will be released here before any publication. + +We thank the tens of thousands of patients and families who generously contributed to our effort. This project is made possible by the generosity of many funders, including the Helmsley Charitable Foundation and the National Human Genome Research Institute (NHGRI), and the leadership of its members. We are incredibly grateful to all the [IIBDGC consortium members](https://www.ibdgenetics.org/) for their gracious contribution to make this collaboration possible. We welcome any feedback! You can contact us by [email](mailto:TODO:@gmail.com) if you have any questions or suggestions. + +All gene-level and variant-level results are available for download, [here](/downloads). + +Individual-level data is available for approved researchers via the dbgap accession [phs001642.v2.v1](https://www.ncbi.nlm.nih.gov/projects/gap/cgi-bin/study.cgi?study_id=phs001642.v2.p1): Center for Common Disease Genomics [CCDG] - Autoimmune: Inflammatory Bowel Disease (IBD) Exomes and Genomes. + +Analysis data last updated February 2024. diff --git a/src/browsers/ibd/content/terms.md b/src/browsers/ibd/content/terms.md new file mode 100644 index 00000000..da14b456 --- /dev/null +++ b/src/browsers/ibd/content/terms.md @@ -0,0 +1,11 @@ +--- +title: Terms of Use +--- + +All data here are released under a [Fort Lauderdale Agreement](https://www.genome.gov/Pages/Research/WellcomeReport0303.pdf) for the benefit of the wider biomedical community for use in the investigation of the genetic causes of schizophrenia and, more generally, medical genetics research. Data and results may not be used in attempts to identify individual study participants. You can freely browse the case-control results; however, we ask that you not publish global (exome-wide) analyses of these data or analyses of large gene sets until after an initial schizophrenia exome meta-analysis paper has been published (estimated to be in Spring 2020). We encourage broad use of the frequency reference data but note that case-control results are provided as general guides. Specific results may not have yet been subjected to the data quality, statistical, and population genetics review that would normally be required for publication or clinical inference. + +If you are uncertain which category your analysis falls into, please [contact us](mailto:TODO:@broadinstitute.org) + +## Citations in publications + +We request that any use of data from the IBD browser cite the consortium's paper, [_Large-scale sequencing identifies multiple genes and rare variants associated with Crohn's disease susceptibility_](https://pubmed.ncbi.nlm.nih.gov/36038634/), and that any online resources that include the dataset provide a link to this browser. diff --git a/src/browsers/webpack.config.js b/src/browsers/webpack.config.js index 578d9a75..8124448a 100644 --- a/src/browsers/webpack.config.js +++ b/src/browsers/webpack.config.js @@ -4,7 +4,7 @@ const { CleanWebpackPlugin } = require('clean-webpack-plugin') const CopyPlugin = require('copy-webpack-plugin') const HtmlPlugin = require('html-webpack-plugin') -const BROWSERS = ['ASC', 'BipEx', 'Epi25', 'SCHEMA'] +const BROWSERS = ['ASC', 'BipEx', 'Epi25', 'SCHEMA', 'IBD'] const isDev = process.env.NODE_ENV === 'development' diff --git a/yarn.lock b/yarn.lock index 528a8acb..3cbd50a2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2055,9 +2055,9 @@ camelize@^1.0.0: integrity sha1-FkpUg+Yw+kMh5a8HAg5TGDGyYJs= caniuse-lite@^1.0.30001087, caniuse-lite@^1.0.30001219: - version "1.0.30001228" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001228.tgz#bfdc5942cd3326fa51ee0b42fbef4da9d492a7fa" - integrity sha512-QQmLOGJ3DEgokHbMSA8cj2a+geXqmnpyOFT0lhQV6P3/YOJvGDEwoedcwxEQ30gJIwIIunHIicunJ2rzK5gB2A== + version "1.0.30001582" + resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001582.tgz" + integrity sha512-vsJG3V5vgfduaQGVxL53uSX/HUzxyr2eA8xCo36OLal7sRcSZbibJtLeh0qja4sFOr/QQGt4opB4tOy+eOgAxg== ccount@^1.0.0: version "1.0.5"