← Back to home
Comparison · Analytics

forestly vs rtflite

A side-by-side editorial comparison of forestly and rtflite — release velocity, themes, recent moves, and the top alternatives to consider.

forestly vs rtflite: at a glance

Featureforestlyrtflite
SectorAnalyticsAnalytics
Velocity score0.00.0
Sparks · 30d00
Top themesclinical-safety, adverse-events, data-visualization, r-languageclinical-reporting, python, document-conversion, rtf
Last editorial update1h ago1h ago
WebsiteVisit →Visit →

What is forestly?

forestly built an interactive safety review tool, then taught it to produce submission-ready RTF.

forestly renders adverse-event forest plots as interactive reactable widgets — filterable by AE category, with sliders for incidence thresholds and a toggle for the risk-difference column. Version 0.1.3 added `rtf_static_forestly()` for static RTF output, and 0.1.4 has been about giving the display owner control over what reviewers see: the CSV download button, the AE filter label, and the diff toggle can each be switched off.

Read the full forestly trajectory →

What is rtflite?

rtflite stopped being an RTF writer and became the conversion layer for clinical table output.

rtflite generates the RTF tables clinical study reports are built from, a Python answer to the R tooling that has owned this niche. Over one dense month it grew a full export path: DOCX in 2.2.0, DOCX concatenation in 2.3.0, a configurable LibreOffice converter in 2.4.0, and HTML plus PDF in 2.5.0. The three releases since have been documentation, test infrastructure, and typing work — the feature push has stopped and consolidation has started.

Read the full rtflite trajectory →

forestly vs rtflite: editorial side-by-side

F
forestly
ANALYTICS
0.0

forestly built an interactive safety review tool, then taught it to produce submission-ready RTF.

◆ Current state

forestly renders adverse-event forest plots as interactive reactable widgets — filterable by AE category, with sliders for incidence thresholds and a toggle for the risk-difference column. Version 0.1.3 added `rtf_static_forestly()` for static RTF output, and 0.1.4 has been about giving the display owner control over what reviewers see: the CSV download button, the AE filter label, and the diff toggle can each be switched off.

◆ Where it's heading

The arc runs from a fixed interactive widget toward a configurable one with two output modes. Nearly every new argument in the last two releases exists to remove something from the display or relabel it, which suggests the users driving development are producing outputs for others to review under conventions they do not control. The x-axis range, column header, figure header and slider range arguments point the same way — this is a tool being fitted into standardised reporting rather than used ad hoc.

◆ Prediction

Given that the last two releases have consisted almost entirely of display-control arguments, the next is likely more of the same, applied to whichever parts of the interactive layout are still fixed.

R
rtflite
ANALYTICS
0.0

rtflite stopped being an RTF writer and became the conversion layer for clinical table output.

◆ Current state

rtflite generates the RTF tables clinical study reports are built from, a Python answer to the R tooling that has owned this niche. Over one dense month it grew a full export path: DOCX in 2.2.0, DOCX concatenation in 2.3.0, a configurable LibreOffice converter in 2.4.0, and HTML plus PDF in 2.5.0. The three releases since have been documentation, test infrastructure, and typing work — the feature push has stopped and consolidation has started.

◆ Where it's heading

Every format addition routes through the same LibreOffice converter rather than a per-format implementation, and 2.4.0's breaking change made that converter an injectable object you can configure and reuse. That is the shape of a package expecting to run inside a pipeline that produces hundreds of tables, not one that converts a document at a time. The recent quiet — snapshot tests moved onto `pytest-r-snapshot`, docs migrated, pandas and pyarrow dropped from dev dependencies — reads as work to stay dependency-light while the surface stabilizes.

◆ Prediction

With the export matrix filled in and three consecutive infrastructure-only releases, the next substantive change is most likely on the input side — table construction and pagination — since `page_by` and `subline_by` are the only feature area still generating bug reports in these notes.

Alternatives to forestly and rtflite

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 forestly or rtflite.

See all forestly alternatives → · See all rtflite alternatives →

Recent activity from forestly and rtflite

Latest ship moves from both products, interleaved chronologically. ⚡ = editorial spark.

  1. 4mo agortfliteMulti-section body typing tightened; pandas dropped from dev deps
  2. 5mo agoforestlyDownload button, AE filter label and diff toggle become optional
  3. 7mo agortfliteAPI reference renders Pydantic field metadata
  4. 7mo agortfliteDocumentation site migrated to Zensical
  5. 7mo agortfliteSnapshot tests moved to pytest-r-snapshot
  6. 7mo agortfliteHTML and PDF export complete the output matrix
  7. 7mo agortfliteLibreOffice conversion becomes an injectable converter object
  8. 11mo agoforestlyStatic RTF forest plots join the interactive output
  9. 1y agoforestlyreactR 0.6.0 rendering fix and slider label control
  10. 2y agoforestlyTreatment group selection and rough-edge fixes
  11. 3y agoforestlyFirst release on GitHub and CRAN

Frequently asked questions

What is the difference between forestly and rtflite?

They serve adjacent needs but don't currently overlap on shipped themes. forestly and rtflite 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.

Is forestly better than rtflite?

Sparkpulse doesn't pick a winner — we score release velocity, not feature parity. forestly and rtflite 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 Analytics products to evaluate alongside.

What are the best alternatives to forestly?

Top forestly alternatives in Analytics are ranked by recent ship velocity. Browse the "forestly alternatives" section above for the current picks, or visit /alternatives/forestly for the full list with editorial commentary on each.

What are the best alternatives to rtflite?

Top rtflite alternatives in Analytics are ranked by recent ship velocity. Browse the "rtflite alternatives" section above for the current picks, or visit /alternatives/rtflite for the full list with editorial commentary on each.