HydroPortailStats
France's national flood statistics, ported out of Fortran and into R.
A side-by-side editorial comparison of cvms and ggdist — release velocity, themes, recent moves, and the top alternatives to consider.
A cross-validation package whose real development has moved to its plotting function
cvms runs repeated cross-validation over model formulas and reports comparable metrics. The 2.0.0 release was a breaking correctness fix: every function accepting fold_cols mismatched training and testing data when fold indices were non-sequential, did not start at 1, or were strings, because the iteration index was compared against the raw fold value rather than its factor level index. 2.0.1 restored coefficient extraction for nnet::multinom and mixed models by supplying an environment containing the training data, and followed lme4's move of findbars() into the reformulas package.
The grammar of uncertainty visualization, now drawing the uncertainty in its own estimates.
ggdist supplies ggplot2 with a compositional vocabulary for distributions — slabs, intervals, dotplots and the sub-geometries that combine them. The last three years moved it from a drawing library to an estimation library: bounded density estimation with Sheather-Jones bandwidth became the default, weights propagate through every density, interval and point summary, and blurred dotplots render Monte Carlo standard error as visual fuzz. The 2025 release rounds this out with per-geometry thickness subscales and settable global defaults.
cvms runs repeated cross-validation over model formulas and reports comparable metrics. The 2.0.0 release was a breaking correctness fix: every function accepting fold_cols mismatched training and testing data when fold indices were non-sequential, did not start at 1, or were strings, because the iteration index was compared against the raw fold value rather than its factor level index. 2.0.1 restored coefficient extraction for nnet::multinom and mixed models by supplying an environment containing the training data, and followed lme4's move of findbars() into the reformulas package.
Two threads run in parallel and only one is about cross-validation. The plotting function plot_confusion_matrix() has absorbed most feature work since 1.5.0 - custom gradient palettes, intensity limits, per-tile settings, dynamic font colors keyed to value thresholds, and arguments that accept functions rather than constants - to the point where a companion web application exists for using it without code. The cross-validation core, by contrast, sees maintenance: upstream compatibility fixes for pROC, ggnewscale and ggplot2, and the fold-matching correction that finally forced a major version.
Expect continued option growth in the confusion matrix plotting surface, since that is where nearly every release since 1.5.0 has spent its changes, with core cross-validation changes arriving only as upstream packages force them.
ggdist supplies ggplot2 with a compositional vocabulary for distributions — slabs, intervals, dotplots and the sub-geometries that combine them. The last three years moved it from a drawing library to an estimation library: bounded density estimation with Sheather-Jones bandwidth became the default, weights propagate through every density, interval and point summary, and blurred dotplots render Monte Carlo standard error as visual fuzz. The 2025 release rounds this out with per-geometry thickness subscales and settable global defaults.
Two threads run in parallel and keep converging. One is statistical: pluggable density estimators arrived first, then became the default, then gained weights and quantile histograms. The other is compositional: sub-geometries acquired their own guides, then their own scales, so a slab's thickness axis is now a first-class annotated dimension. Cadence has stretched from twice-yearly to roughly annual, with the recent work tightening existing surface rather than opening new.
Subguides gained subscales a release later, so the remaining asymmetry is in the sub-geometry system rather than the statistics; expect the next release to continue that fill-in work.
Other Infra & APIs 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 cvms or ggdist.
France's national flood statistics, ported out of Fortran and into R.
Sign, zero and narrative restrictions brought into the bsvars ecosystem.
Fast design-based estimators for experiments, coasting on CRAN patches.
IP address vectors for R that hit 1.0 and then went quiet.
A column-key toolkit for stitching decades of ecological field data into one table.
Microsoft's automated forecasting framework, still mostly a one-maintainer effort.
Latest ship moves from both products, interleaved chronologically. ⚡ = editorial spark.
Both compete on the same themes — r-package — within Infra & APIs. cvms and ggdist are shipping at a similar cadence (velocity 0.0 vs 0.0, both within Sparkpulse's "active" band). 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. cvms and ggdist are shipping at a similar cadence (velocity 0.0 vs 0.0, both within Sparkpulse's "active" band). For your specific use case, the alternatives sections above list other Infra & APIs products to evaluate alongside.
Top cvms alternatives in Infra & APIs are ranked by recent ship velocity. Browse the "cvms alternatives" section above for the current picks, or visit /alternatives/cvms for the full list with editorial commentary on each.
Top ggdist alternatives in Infra & APIs are ranked by recent ship velocity. Browse the "ggdist alternatives" section above for the current picks, or visit /alternatives/ggdist for the full list with editorial commentary on each.