qtl2fst
The out-of-memory backend for R/qtl2, feature-complete since 2020 and now purely on upkeep
A side-by-side editorial comparison of qtl2 and vahtian — release velocity, themes, recent moves, and the top alternatives to consider.
The standard QTL mapping package in R opened its genome scan to user-supplied likelihood models.
qtl2 is the R toolkit for QTL mapping in experimental crosses, covering genotype probability calculation, genome scans with and without polygenic effects, permutation testing, SNP association, and the plotting that goes with them. The last year of work has pushed hard in two directions: tooling for high-throughput expression and protein QTL studies, and a generalisation of the scan engine itself so the log-likelihood being maximised can be supplied by the user. Note that the release history reached this feed out of order, so feed position is not a reliable guide to which release came first.
A provenance-first corpus tool hands its verification core to agents over MCP
vahtian freezes a set of research records into a content-hashed, date-locked corpus, verifies it is untampered, and keeps a hash-chained audit ledger. It ships in Python and R with byte-identical content hashes enforced by a golden-hash test in both suites. In five weeks it went from first release to exposing its five core operations through a local stdio MCP server and registering in the MCP Registry.
qtl2 is the R toolkit for QTL mapping in experimental crosses, covering genotype probability calculation, genome scans with and without polygenic effects, permutation testing, SNP association, and the plotting that goes with them. The last year of work has pushed hard in two directions: tooling for high-throughput expression and protein QTL studies, and a generalisation of the scan engine itself so the log-likelihood being maximised can be supplied by the user. Note that the release history reached this feed out of order, so feed position is not a reliable guide to which release came first.
The eQTL and pQTL direction is the clearest thread — cis-trans plots, hotspot counting over a sliding window, multi-trait scan heat maps, and genome-wide genotype plots all arrived together, which is the toolkit an experiment with thousands of traits needs rather than one with a handful. Running underneath it is a steady generalisation of the core: a scan function that accepts an arbitrary likelihood, permutations that work with alternative scan functions, full variance-covariance output from single-position fits. Performance and parallelism get attention each cycle, including a more considerate default that leaves one core free. The rest is the ordinary maintenance of a long-lived package — renames to avoid tidyverse collisions, compiler warnings, and correctness fixes on specific cross types.
With scan1gen and permutation support for alternative scan functions in place, the natural next step is more model types built on that hook rather than more special-cased scan functions; the entries do not indicate which models are planned.
vahtian freezes a set of research records into a content-hashed, date-locked corpus, verifies it is untampered, and keeps a hash-chained audit ledger. It ships in Python and R with byte-identical content hashes enforced by a golden-hash test in both suites. In five weeks it went from first release to exposing its five core operations through a local stdio MCP server and registering in the MCP Registry.
The direction is explicit in the project's own framing — human-first, AI-second, auditable — and the MCP server is what makes that framing operational rather than rhetorical. Rather than adding judgement, the tool is being positioned as the thing an agent calls to prove a corpus has not moved. The CiteVahti claim-source comparator, mirrored across both languages under a parity gate, extends the same idea to per-claim checking. Everything stays on the user's machine: no accounts, no telemetry.
The comparator's per-field epistemic states are the newest and least settled piece; expect the next release to extend those states or to widen the R package's distribution, which is still described as coming.
Other Analytics products tracked by Sparkpulse, ranked by recent ship velocity. Each card links to a full editorial trajectory and lets you pivot into a head-to-head comparison with either qtl2 or vahtian.
The out-of-memory backend for R/qtl2, feature-complete since 2020 and now purely on upkeep
A single-purpose mouse map interpolator that solved its problem in 2023 and has coasted since
A conversion utility in pure maintenance mode, tracking R-devel breakage release by release
The R client for PurpleAir sensors keeps finding its time-averaging was wrong.
A board game graphics package runs one of the most disciplined deprecation cycles in R.
The explainable-ensemble-tree package now measures whether its own explanations are faithful.
See all qtl2 alternatives → · See all vahtian alternatives →
Latest ship moves from both products, interleaved chronologically. ⚡ = editorial spark.
They serve adjacent needs but don't currently overlap on shipped themes. vahtian is currently shipping more aggressively (velocity 3.8 vs 2.5), with 1 editorial sparks in the last 30 days against 0. See the at-a-glance table above for a side-by-side breakdown of velocity, recent sparks, and editorial themes.
Sparkpulse doesn't pick a winner — we score release velocity, not feature parity. vahtian is currently shipping more aggressively (velocity 3.8 vs 2.5), with 1 editorial sparks in the last 30 days against 0. For your specific use case, the alternatives sections above list other Analytics products to evaluate alongside.
Top qtl2 alternatives in Analytics are ranked by recent ship velocity. Browse the "qtl2 alternatives" section above for the current picks, or visit /alternatives/qtl2 for the full list with editorial commentary on each.
Top vahtian alternatives in Analytics are ranked by recent ship velocity. Browse the "vahtian alternatives" section above for the current picks, or visit /alternatives/vahtian for the full list with editorial commentary on each.