SNP Genotyping Assay Design and Visualization

Designs cleaved amplified polymorphic sequence (CAPS), derived CAPS (dCAPS), conventional amplification refractory mutation system (ARMS) and tetra-primer ARMS assays for single-locus, biallelic single nucleotide polymorphisms. Evaluates sequence-compatible primer binding, reconstructs ideal polymerase chain reaction products and computes theoretical complete restriction digestion and conditional genotype profiles. Transparent preference ranking, scientific visualizations and reproducible exports retain assumptions, missing specificity evidence and bounded search limitations. An optional offline 'shiny' interface uses the independently available analysis functions. Predictions do not establish experimental amplification, digestion efficiency or genome-wide specificity. Implements perfect-match nearest-neighbor thermodynamics from SantaLucia (1998) , single-substitution site-creation dCAPS based on Neff et al. (1998) , and conditional ARMS designs based on Newton et al. (1989) and Ye et al. (2001) .


SNPAssayR

SNPAssayR provides offline R functions and an optional local Shiny interface for CAPS, single-substitution dCAPS, conventional ARMS-PCR and tetra-primer ARMS-PCR.

library(SNPAssayR)
# Requires already installed optional shiny and bslib packages.
# Launch interactively; no remote analysis service is used.
SNPAssayR::run_app()

In the application: import a sequence or FASTA text/file, select an exact FASTA record, provide a one-based biallelic SNP, choose a method, configure constraints, and click Analyze. Inspect candidate evidence and linked plots before export. Changing analytical inputs invalidates the old analysis; restoring an input does not restore an old result. Analyze again. Supplied copies are screened locally; genome-wide specificity remains unassessed.

Core functions need only R. The interface needs shiny >=1.8.0 and bslib >=0.6.1; testthat is optional for installed tests. No automatic dependency installation, mandatory remote server, GPU, large reference genome or external binary is used.

# Artificial coordinate fixture, not biological data or laboratory primer advice.
s <- validate_snp(read_locus("ACGTTGAATTCAAAAAAGTC", "fixture"), 6, "G", "A")
x <- design_caps(s, restriction_enzymes()[1, , drop = FALSE],
  primer_lengths = 3, product_min = 20, product_max = 20,
  gc_range = c(0, 1), tm_range = c(-250, 100),
  max_tm_difference = 100, screening_mismatches = 0)
x$summary
rank_assays(x)$components

The main teaching example uses one 550 bp synthetic locus, SNP C275G, and 22 nt primers for all four workflows, with normal quality filters:

source(system.file("examples", "tutorial_550bp.R", package = "SNPAssayR"))
tutorial_primers[, c("method", "role", "sequence_5prime_to_3prime", "tm_celsius")]
tutorial_assays$tetra$candidates[[1]]$intended_products
draw_scene(assay_scene(tutorial_assays$tetra))
draw_scene(band_scene(tutorial_assays$caps))

The FASTA is installed at system.file("extdata", "tutorial_550bp.fasta", package = "SNPAssayR"). Shiny provides the same four 550 bp teaching presets. The locus and SNP are synthetic, and the assays have no laboratory validation. CAPS with MfeI-HF gives an uncut 120 bp reference and 18 + 102 bp alternative; dCAPS with EcoRI reverses these patterns through an intentional C270G edit. Conventional ARMS uses separate 120 bp reactions; tetra-primer ARMS has modeled 180 bp control, 100 bp reference and 123 bp alternative products. Small-fragment visibility and gel separation require experimental assessment. The bounded tutorial returns one candidate per method; inspect search truncation and warnings. Use primer_lengths = 20:22 for a broader length search.

restriction_enzymes() supplies 20 independently curated distinct recognition motifs, with both strand cuts and dated source links. User tables must follow its schema and the supported palindromic/internal-cut model; no online import occurs. Known homeologs/paralogs can be supplied as named DNA strings through read_locus(..., comparison_sequences = c(copy1 = "...")). Replace the placeholder with actual sequences. Genome-wide specificity remains unassessed.

Use citation("SNPAssayR") for the software citation, including version 1.0.1.

For tetra-primer designs, product-size bounds apply to the outer control and both diagnostic products. Its six pairwise risk screens separately cover 1-10,000 bp.

Read vignette("SNPAssayR-workflows", package = "SNPAssayR") for tested examples of all four workflows, prediction boundaries and reproducible exports. Full methods are installed under system.file("methods", package = "SNPAssayR"). All exported functions have R help pages.

Only case and whitespace are normalized and recorded. Ambiguous IUPAC bases are retained. SNP alleles must be distinct uppercase A/C/G/T and match the reference coordinate. Limits: 10,000 bases per sequence, 50 FASTA records, 50 named copies. No indels, multiallelic variants or concatenation of FASTA records is supported.

Predicted amplification is conditional sequence compatibility, not experimental validation. Target specificity and allele specificity are separate. Complete digest fragments are theoretical; digestion efficiency is unknown. Plots have no validated intensity/detection model. Ranking scores express explicit laboratory preferences, not success probabilities. Search truncation and missing evidence are retained. No KASP design is included.

Authors: Prashant Yadav, Vinod Kumar and Vijay Veer Singh. Maintainer: Prashant Yadav [email protected]. All authors are affiliated with the ICAR-Indian Institute of Rapeseed-Mustard Research, Bharatpur, Rajasthan, India. Copyright holder: ICAR-Indian Institute of Rapeseed-Mustard Research (ICAR-IIRMR). License: GPL-3. Contributions are recorded in DESCRIPTION and installed COPYRIGHTS. Predictions require independent laboratory validation.

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.

install.packages("SNPAssayR")

1.0.1 by Prashant Yadav, 7 hours ago


Browse source code at https://github.com/cran/SNPAssayR


Authors: Prashant Yadav [aut, cre] (Contribution: Conceptualization; methodology; scientific review) , Vinod Kumar [aut] (Contribution: Software; package design; implementation; validation; testing) , Vijay Veer Singh [aut] (Contribution: Conceptualization; supervision) , ICAR-Indian Institute of Rapeseed-Mustard Research (ICAR-IIRMR) [cph]


Documentation:   PDF Manual  


GPL-3 license


Suggests testthat, shiny, bslib


See at CRAN