GWAS Catalog: Beyond SNPs
This Python monorepo contains packages and documentation designed to help users prepare non-SNP GWAS summary statistics for submission to the GWAS Catalog.
What kind of data are supported?
| Type of genetic variant | Supported |
|---|---|
| Single nucleotide polymorphism (SNP) | ❌, see gwas-sumstats-tools |
| Copy number variant (CNV) | ✅ |
| Gene | ✅ |
Using the validation CLI for bulk data processing
First, install uv, then run:
$ uvx --from gwascatalog-sumstatapp gwascatalog beyondsnp validate --help
You should see:
Validate GWAS summary statistics files for submission to the GWAS Catalog.
positional arguments:
INPUT Files to validate
options:
-h, --help show this help message and exit
--type {CNV,GENE} Type of genetic variation (CNV or GENE)
--assembly {GRCh38,GRCh37,NCBI36,NCBI35,NCBI34}
Genome assembly (e.g. GRCh38)
--effect-size {beta,odds_ratio,hazard_ratio,z_score}
Primary effect size measure
--allow-zero-pvalues Accept zero as a valid p-value
-o, --output-dir OUTPUT_DIR
Output directory for results (default: ./validated/)
The package is also available from PyPI. You should always install the pydantic extra:
$ pipx install "gwascatalog.sumstatapp[pydantic]"
Documentation
See our docs here. Please create an issue or email gwas-info@ebi.ac.uk if you have any questions or comments. We appreciate community feedback.
Developer notes
This repository is a uv workspace containing two Python packages:
sumstatlib: Pydantic models and validation public interfacessumstatapp: data validation applications which uses sumstatlib internally, containing two deployment approaches:- A Pyodide web application, responsible for browser-based data validation
- A standard CLI for bulk data processing and eventual integration with the GWAS Catalog backend
User facing website
- The
docsdirectory contains a docusaurus website - This is the landing page for non-SNP GWAS Catalog submissions, and the compiled static site will be deployed to https://ebi.ac.uk/gwas/apps/beyond-snps
- A custom docusaurus build process is responsible for building the sumstatlib wheel and bundling the sumstatapp web directory as static content
Building the beyond SNPs static site
Development build (assumes deployed to / on localhost:8000):
$ cd docs
$ npm run build:dev
$ npm run serve
Production build (assumes deployed to a base URL: gwas/apps/beyond-snps)
$ cd docs
$ npm run build
Deploying the static site is pretty simple: just put the compiled assets somewhere (a bucket, a docker image, etc.).
Metadata
Release files for gwascatalog.sumstatapp 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| gwascatalog_sumstatapp-0.1.1.tar.gz | 354.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| gwascatalog_sumstatapp-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 412.1 kB
Release files / gwascatalog_sumstatapp-0.1.1.tar.gz
| Download URL | gwascatalog_sumstatapp-0.1.1.tar.gz |
|---|---|
| Size | 354.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
fa1299ed0c52d082062fbc58ab485d7d8469bed6af2e4df94129958c8c2a4716
|
|
BLAKE2b-256 checksum How to use checksums |
97125d0dee31ecbf067a4ef53ea018d0c767f7e36c3b6a873a05cc87669956a2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / gwascatalog_sumstatapp-0.1.1-py3-none-any.whl
| Download URL | gwascatalog_sumstatapp-0.1.1-py3-none-any.whl |
|---|---|
| Size | 58.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
17ff470471f621f110a26e46212ae137bd0e6598ace4ea773a5904543c8807bd
|
|
BLAKE2b-256 checksum How to use checksums |
9eee61e71fc337a01c952213be1b6ee720b7c0637d24e3baf5456c695f20e5be
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|