Skip to main content

A Suite of Genotyping Tools for Genome-Wide Association Study and Genomic Selection

Project description

JanusX

CLI Guide | Core API Guide | Zea Eureka

Python License

Overview

JanusX (Joint Association and Novel Utility for Selection) is a GWAS and genomic selection toolkit that combines:

  • Rust-accelerated kernels (PyO3 extension)
  • Python analysis modules
  • A Rust launcher (jx) for runtime/toolchain management and pipeline orchestration
       _                      __   __
      | |                     \ \ / /
      | | __ _ _ __  _   _ ___ \ V /
  _   | |/ _` | '_ \| | | / __| > <
 | |__| | (_| | | | | |_| \__ \/ . \
  \____/ \__,_|_| |_|\__,_|___/_/ \_\ Tools for GWAS and GS
  ---------------------------------------------------------

Main capabilities:

  • GWAS: LM, LMM, FastLMM, LRLMM, FarmCPU
  • Genomic selection: GBLUP, adBLUP, rrBLUP, BayesA/B/Cpi, and ML models (RF/ET/GBDT/XGB/SVM/ENET)
  • Streaming genotype IO for VCF/HMP/PLINK/TXT/NPY
  • Post-analysis workflows: postgwas, postgarfield, postbsa
  • Utility workflows: grm, pca, gformat, gmerge, hybrid, adamixture, webui, sim, simulation
  • Launcher pipelines: fastq2vcf, fastq2count

jx & jxpy

JanusX provides two command entry styles:

  • jx (Rust launcher): manages runtime/update/toolchain and supports all launcher modules
  • jxpy (Python package entry): runs Python-side modules directly

Practical difference:

  • fastq2vcf and fastq2count are launcher-only (jx)
  • launcher-only flags (-update/-upgrade/-list/-clean/-uninstall) are not available in jxpy

Installation

Option A: launcher install (recommended for end users)

Download installer assets from Releases:

Then run installer:

# Linux
./JanusX-vX.Y.Z-linux-x86_64.run

# macOS
./JanusX-vX.Y.Z-darwin-universal.command

On Windows, double click or run the .exe installer.

After install:

jx -v
jx -list module

Option B: Python package install (API-first / development)

pip install janusx
# command entry: jxpy (version>=1.0.14) or jx (version<1.0.14)
  • If you only need a turnkey CLI environment with pipeline tooling, prefer launcher install.

Quick start

1) GWAS

jx gwas -vcf example/mouse_hs1940.vcf.gz -p example/mouse_hs1940.pheno -lmm -o test

overview

2) Post-GWAS

jx postgwas -gwasfile test/mouse_hs1940.test0.add.lmm.tsv -manh -qq -thr 1e-6 -o testpost

ldblock

3) Genomic selection

jx gs -vcf example/mouse_hs1940.vcf.gz -p example/mouse_hs1940.pheno -GBLUP -cv 5 -o testgs
* Genomic Selection for trait: test0
Train size: 1410, Test size: 530, EffSNPs: 8960
✔︎ GBLUP ...Finished [3.5s]
✔︎ adBLUP ...Finished [10.1s]
✔︎ BayesA ...Finished [32.6s]
✔︎ BayesB ...Finished [34.2s]
✔︎ BayesCpi ...Finished [32.0s]
✔︎ RF ...Finished [1m46s]
✔︎ XGB ...Finished [9m27s]
✔︎ SVM ...Finished [2m05s]
✔︎ ENET ...Finished [9.7s]
Fold Method     Pearsonr Spearmanr     R² h²/PVE time(secs)
   1 GBLUP         0.704     0.671  0.493  0.610      0.531
   1 adBLUP        0.717     0.679  0.512  0.694      2.341
   1 BayesA        0.721     0.695  0.514  0.714      5.307
   1 BayesB        0.722     0.693  0.517  0.667      5.522
   1 BayesCpi      0.699     0.671  0.476  0.672      4.971
   1 RF            0.709     0.702  0.471  0.468      3.055
   1 XGB           0.754     0.733  0.564  0.563      5.231
   1 SVM           0.703     0.664  0.490  0.485      9.027
   1 ENET          0.720     0.704  0.514  0.517      0.274

gsoverview

See full usages in CLI Guide.

4) Get module help

jx <module> -h

Module map

Genome-wide Association Studies (GWAS):

  • grm
  • pca
  • gwas
  • postgwas (Visualization, manh qq ldblock)

Genomic Selection (GS):

  • gs
  • reml (Estimation of broaden heritability and blup values)

GARFIELD:

  • garfield
  • postgarfield

Bulk Segregation Analysis (BSA):

  • postbsa (Visualization, after BSA pipeline)

Pipeline and utility:

  • fastq2count (RNAseq pipeline, launcher-only)
  • fastq2vcf (BSA/Reseq pipeline, launcher-only)
  • adamixture (Based on ADAMIXTURE)
  • hybrid (Generate F1 genotype base on Parents)
  • gformat (Conversion between genotype data formats)
  • gmerge (Merge genotype between samples)
  • webui (Visualization, beta version)

Benchmark:

  • sim
  • simulation

Citation

@article {FuJanusX,
  title = {JanusX: an integrated and high-performance platform for scalable genome-wide association studies and genomic selection},
  author = {Fu, Jingxian and Jia, Anqiang and Wang, Haiyang and Liu, Hai-Jun},
  year = {2026},
  doi = {10.64898/2026.01.20.700366},
  publisher = {Cold Spring Harbor Laboratory},
  URL = {https://www.biorxiv.org/content/early/2026/01/23/2026.01.20.700366},
  journal = {bioRxiv}
}

License

This project is licensed under GNU Affero General Public License v3.0 (AGPL-3.0-or-later). See LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

janusx-1.0.19.tar.gz (3.2 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

janusx-1.0.19-cp39-abi3-win_arm64.whl (1.8 MB view details)

Uploaded CPython 3.9+Windows ARM64

janusx-1.0.19-cp39-abi3-win_amd64.whl (2.0 MB view details)

Uploaded CPython 3.9+Windows x86-64

janusx-1.0.19-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ x86-64

janusx-1.0.19-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.9 MB view details)

Uploaded CPython 3.9+manylinux: glibc 2.17+ ARM64

janusx-1.0.19-cp39-abi3-macosx_11_0_arm64.whl (1.8 MB view details)

Uploaded CPython 3.9+macOS 11.0+ ARM64

janusx-1.0.19-cp39-abi3-macosx_10_12_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.9+macOS 10.12+ x86-64

File details

Details for the file janusx-1.0.19.tar.gz.

File metadata

  • Download URL: janusx-1.0.19.tar.gz
  • Upload date:
  • Size: 3.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.9.4

File hashes

Hashes for janusx-1.0.19.tar.gz
Algorithm Hash digest
SHA256 1df93b5efd39cbaecee5fd61a2a6ea8fd3487752c3eea4198882b7d8d7e2335b
MD5 3a9a182da466b11f7d9f627798e0a436
BLAKE2b-256 abc6aae8e04b630112efcc63872ba71566dafcdae4fb8ea565726680c9d70359

See more details on using hashes here.

File details

Details for the file janusx-1.0.19-cp39-abi3-win_arm64.whl.

File metadata

  • Download URL: janusx-1.0.19-cp39-abi3-win_arm64.whl
  • Upload date:
  • Size: 1.8 MB
  • Tags: CPython 3.9+, Windows ARM64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.9.4

File hashes

Hashes for janusx-1.0.19-cp39-abi3-win_arm64.whl
Algorithm Hash digest
SHA256 a287bf4ed264bdf1dc17a7180e9597378e9ec70092f01b7ffeca0188a7dda4a5
MD5 1531e435ecdccf176b37287d09e1c958
BLAKE2b-256 0e655f0d5b2ee546df9c465d8dfc676d4e7ebddf4cf6730d5c393064a4fbfddf

See more details on using hashes here.

File details

Details for the file janusx-1.0.19-cp39-abi3-win_amd64.whl.

File metadata

  • Download URL: janusx-1.0.19-cp39-abi3-win_amd64.whl
  • Upload date:
  • Size: 2.0 MB
  • Tags: CPython 3.9+, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.9.4

File hashes

Hashes for janusx-1.0.19-cp39-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 87d9a88c82e2cb18b46fa33a8cb17d46d937643b9cc126e2d5de6bf1e0091cb4
MD5 c35b8a935ca8a5249ee91c09f49dcfdb
BLAKE2b-256 234decbd422c3611b741e0e306acdf287d5eb4fba9fa9febac63b6e435d931df

See more details on using hashes here.

File details

Details for the file janusx-1.0.19-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for janusx-1.0.19-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fb2f77cdc1f96e87c1b3bbd3589831f4fd70feaaae66551a4f11ab7fefd5810c
MD5 eb62ee2e5ea423686900b32b0b52ccbf
BLAKE2b-256 a739062c1fb81d1164f405063c646b562604521a45c0658b0a87572346a7a202

See more details on using hashes here.

File details

Details for the file janusx-1.0.19-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for janusx-1.0.19-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 88b8fce29130a0ae751a92ba3002d03a5e94b71455dc1d8b0806be61d047de37
MD5 077c4475ded07ecffdd40fdda08b6007
BLAKE2b-256 ca22d8b8b95d0e7d29e463f6b8a7b5117ce2dcb7013c21373d9e3823613e3b70

See more details on using hashes here.

File details

Details for the file janusx-1.0.19-cp39-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for janusx-1.0.19-cp39-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 0eebf10e74c4c79dd04d5c831916f646c177b292edad106ee716fdea2577aeb8
MD5 e0162ddbbea42c03c95c7cdb49197378
BLAKE2b-256 f8dd5f7ffad0d9fdcabb3d70a72c2a326b54360142bf1ff4b8008233d12622ad

See more details on using hashes here.

File details

Details for the file janusx-1.0.19-cp39-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for janusx-1.0.19-cp39-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 62c8c270a542d1163928a919512a686fd69b295ff45b13ab0db0aa9826b32d4d
MD5 4f85a1af4adb78bc0aa2b1e5637b3d1b
BLAKE2b-256 93ec595a90adafdb3721361a0c9eaa60e052534bcb9f431f5169a654ca5ba0cf

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page