Basedash
Basedash keeps pushing its data out of the workspace — now to people without accounts
A side-by-side editorial comparison of fmtr and tulpa — release velocity, themes, recent moves, and the top alternatives to consider.
Rebuilding SAS's formatting layer in R, one format specification at a time
fmtr applies formats to R data the way SAS applies them: named format catalogues, format lists, and an fapply() that maps a specification onto a vector. It is part of a family of packages that reconstruct SAS reporting idioms in R, and it shares infrastructure with them — labels.data.frame() was moved out to the common package, which fmtr now depends on. The recent releases have been closing specific gaps against SAS's own format vocabulary.
The 0.0.x train stops at CRAN: tulpa's engine ships to the ecosystem it already anchors.
tulpa is the C++/R Bayesian spatial inference engine sitting under gcol33's family of ecological occupancy packages, tagging 0.0.x releases several times a week. 0.1.0 is its first CRAN release, and the notes state outright that the engine surface is unchanged from 0.0.198 — the work is packaging discipline: local T bindings rebound to n_t/n_times, OpenMP teams capped under R CMD check, the pkgdown deploy narrowed, an aspell dictionary added. The window behind it splits between the S3 generics conversion and numerical-correctness work in the nested-Laplace grid.
fmtr applies formats to R data the way SAS applies them: named format catalogues, format lists, and an fapply() that maps a specification onto a vector. It is part of a family of packages that reconstruct SAS reporting idioms in R, and it shares infrastructure with them — labels.data.frame() was moved out to the common package, which fmtr now depends on. The recent releases have been closing specific gaps against SAS's own format vocabulary.
The direction is parity, pursued in small increments. Quarter format codes were added because base R has none; the SAS best. format was reimplemented, then hardened against the variations people actually write; statistical summary helpers like fmt_mean_sd() and fmt_mean_stderr() cover the cell contents clinical tables need. The structural work is largely behind it, including the breaking 2022 move that handed labelling to a sibling package, so what remains is vocabulary coverage.
The pattern of adding a SAS format, then a release to handle its variants, suggests the next releases continue filling in format codes and summary helpers rather than changing how formats are applied.
tulpa is the C++/R Bayesian spatial inference engine sitting under gcol33's family of ecological occupancy packages, tagging 0.0.x releases several times a week. 0.1.0 is its first CRAN release, and the notes state outright that the engine surface is unchanged from 0.0.198 — the work is packaging discipline: local T bindings rebound to n_t/n_times, OpenMP teams capped under R CMD check, the pkgdown deploy narrowed, an aspell dictionary added. The window behind it splits between the S3 generics conversion and numerical-correctness work in the nested-Laplace grid.
Two moves in nine days point at the same destination: the generics conversion made tulpa extensible by downstream packages, and CRAN admission makes it installable by them. The current cadence — several tags a week, some existing only to record a measurement that produced no code change — does not survive CRAN's submission overhead, so the release rhythm has to slow whether or not the project intends it. The correctness work still clusters on the joint nested-Laplace driver, and 0.1.0 extends the same diagnostics habit with .NL_AXIS_SD_REASONS, a closed vocabulary for an outer axis whose grid does not contain its own posterior mode.
Expect tulpaObs to follow tulpa onto CRAN, since it is the consumer whose registrations the engine has spent this window unblocking, and expect the version line to move in larger, less frequent steps now that each one carries a submission.
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 fmtr or tulpa.
Basedash keeps pushing its data out of the workspace — now to people without accounts
RStudio ships through release branches, and the notes are commit messages
dbt Fusion's second beta is adapter work: ClickHouse gets materializations, indexes, and catalogs
Fulcrum is betting its whole map stack on Esri, with a hard Google Maps cutoff on September 1.
Holistics keeps fencing in the AI layer it spent the summer building.
Dovetail spent July opening doors to other tools and August making its own rooms easier to enter.
Latest ship moves from both products, interleaved chronologically. ⚡ = editorial spark.
They serve adjacent needs but don't currently overlap on shipped themes. tulpa is currently shipping more aggressively (velocity 7.5 vs 0.0), with 2 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. tulpa is currently shipping more aggressively (velocity 7.5 vs 0.0), with 2 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 fmtr alternatives in Analytics are ranked by recent ship velocity. Browse the "fmtr alternatives" section above for the current picks, or visit /alternatives/fmtr for the full list with editorial commentary on each.
Top tulpa alternatives in Analytics are ranked by recent ship velocity. Browse the "tulpa alternatives" section above for the current picks, or visit /alternatives/tulpa for the full list with editorial commentary on each.