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.18.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.18-cp39-abi3-win_arm64.whl (1.8 MB view details)

Uploaded CPython 3.9+Windows ARM64

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

Uploaded CPython 3.9+Windows x86-64

janusx-1.0.18-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.18-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.18-cp39-abi3-macosx_11_0_arm64.whl (1.8 MB view details)

Uploaded CPython 3.9+macOS 11.0+ ARM64

janusx-1.0.18-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.18.tar.gz.

File metadata

  • Download URL: janusx-1.0.18.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.18.tar.gz
Algorithm Hash digest
SHA256 d9c82a81940b5ac19335a40be9c504b30a13db8964c894f7dd8fcc677fe4204d
MD5 e19ea76a86ee3e620fb730693cffe2a0
BLAKE2b-256 0807f29997ddf8c99cef9c7edf953ce4d723e3fd63cf799b2f41be6e482ca049

See more details on using hashes here.

File details

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

File metadata

  • Download URL: janusx-1.0.18-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.18-cp39-abi3-win_arm64.whl
Algorithm Hash digest
SHA256 5cbd4d7425b649de5b37f18be06e71f158dbe69cc0a9832352c99d5669938e73
MD5 e14fa8eec44e4e8e1f5326d5b9e65c5a
BLAKE2b-256 953a2358557275dae04c0a207cfe99f90600c23a3d51fcc49aca47452faa651d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: janusx-1.0.18-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.18-cp39-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 90518b1bf628c682f780b61c57091357d39133d34a6eae13b35e9063b26950fd
MD5 11d3f4ce5443d5b3e56ec9797b4a2e79
BLAKE2b-256 69740928b9ccb7532244c28479d5f019378893d2eca814588f2f9192e908773c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for janusx-1.0.18-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c7ef968d9eb4470d830a27242b8f0f515a3ea5baad9161746d6b9a9b4e7a835e
MD5 2d5d053bbc27c84d9a9bd93a2ff69f83
BLAKE2b-256 35b8084c47a9afe4ebef28995e6c148de2b1ff71dc6352d7c059176078cbc4bf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for janusx-1.0.18-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 2c67525b0a03b412cc58f5914cdb0c4e63e44377d946d1a13e029e2f873e961f
MD5 869027db7aa06057623e5935fa78d721
BLAKE2b-256 97dc3c59a5daca7080a7084978cc14a81d8c3ce398440635c37082d06294e22f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for janusx-1.0.18-cp39-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 43674120b84861e77fbafd09087e19ef0abf9f09939e6a58e979a0aba49f1f96
MD5 210eb5521dffea3d97cdbf9d02bf1ec0
BLAKE2b-256 d1e28f5dd74b75a9ca1e74513c8a62c6506a64625b74e68eeb070c4add22e674

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for janusx-1.0.18-cp39-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 6196bacc0de57b14dbbd4eb3d3909288ecc2b8f0258117c7b4f82d4603eb3191
MD5 989044f83a7a8dc71bf5529bd2b9561e
BLAKE2b-256 53d3560cba36c54e89b989515b8f8a6352dc065a22ccd5f15609f046664628e8

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