CHNOSZ
A geochemistry thermodynamics engine that changed its units and its database schema in one release.
A side-by-side editorial comparison of ggfootball and states — release velocity, themes, recent moves, and the top alternatives to consider.
A football-viz package just swapped scraping for an API and broke its own output to do it.
ggfootball is a small R package for plotting expected-goals and shot data, sourced from Understat. Four releases are visible. The 0.2.x line was argument tidying and dependency pruning; 0.3.0 replaced the data-acquisition layer wholesale, moving get_match_shots() from HTML parsing onto Understat's AJAX endpoints and changing the returned column names in the process.
State-panel tooling holding steady since its 2020 data and ergonomics release.
states supplies the Gleditsch & Ward and Correlates of War state lists and the tooling to turn them into country-year or country-month panels, with plot_missing() for coverage checks. The substantive work landed in 2020; the releases since are compatibility fixes against ggplot2, dplyr, readr and testthat. The most recent entry is a single test repair.
ggfootball is a small R package for plotting expected-goals and shot data, sourced from Understat. Four releases are visible. The 0.2.x line was argument tidying and dependency pruning; 0.3.0 replaced the data-acquisition layer wholesale, moving get_match_shots() from HTML parsing onto Understat's AJAX endpoints and changing the returned column names in the process.
The direction is away from scraped HTML and toward a thinner, more defensible package: four dependencies dropped in 0.3.0 on top of qdapRegex in 0.2.1, input validation added, error messages rewritten. Both breaking changes so far were accepted rather than deferred, which reads as a maintainer treating pre-1.0 as the window to get the shape right. The package is willing to break callers for structural reasons, not cosmetic ones.
With the scraper rebuilt and the dependency surface trimmed, the next releases are likely to stabilise the new column names and extend the plotting side, which has seen nothing since 0.2.0. A 1.0 would be the signal that the data structure is now considered fixed.
states supplies the Gleditsch & Ward and Correlates of War state lists and the tooling to turn them into country-year or country-month panels, with plot_missing() for coverage checks. The substantive work landed in 2020; the releases since are compatibility fixes against ggplot2, dplyr, readr and testthat. The most recent entry is a single test repair.
The package has reached the point where its own data and API are settled and the release trigger is upstream churn in the tidyverse. What movement there is goes toward making the two state lists interchangeable, with the microstates coding carried from G&W onto the COW data as the clearest example, rather than toward new datasets.
The next release is most likely another compatibility pass; a data refresh would be the signal that the package is active again.
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 ggfootball or states.
A geochemistry thermodynamics engine that changed its units and its database schema in one release.
Half CRAN dependency scraper, half extreme-value modelling kit — and the scraper half keeps finding bugs.
Repertory grids learn which pole is the preferred one — a data-model change, not another plot option.
A categorical-variable selection package that publishes its full test logs as release candidates.
A dormant sample-size package woke up in 2025 with parallel backends and a three-release DOI farce.
A niche R package for author bylines that keeps sanding down the edges of academic metadata.
See all ggfootball alternatives → · See all states alternatives →
Latest ship moves from both products, interleaved chronologically. ⚡ = editorial spark.
They serve adjacent needs but don't currently overlap on shipped themes. ggfootball and states 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. ggfootball and states 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 ggfootball alternatives in Infra & APIs are ranked by recent ship velocity. Browse the "ggfootball alternatives" section above for the current picks, or visit /alternatives/ggfootball for the full list with editorial commentary on each.
Top states alternatives in Infra & APIs are ranked by recent ship velocity. Browse the "states alternatives" section above for the current picks, or visit /alternatives/states for the full list with editorial commentary on each.