forecastsuite

A local, full-featured companion to the hosted Forecast Dashboard Shiny app. Where the hosted app deliberately sticks to Prophet + ARIMA to fit a ~1GB-RAM free hosting tier, this package has no such constraint and adds:

Install

install.packages("remotes")
remotes::install_local("forecastsuite")

Run the app

forecastsuite::run_app()

In RStudio, the app is also available from the Addins menu (“Run forecastsuite”) – no need to type the command.

Learn more

vignette("forecastsuite") walks through the bundled app tab-by-tab and the model registry API for scripting forecasts directly in R, without the app.

Prophet support (optional)

install.packages("prophet")

Everything else works without prophet — list_models() simply omits Prophet until it’s installed. prophet pulls in a compiled Stan backend (rstan/StanHeaders) that has a real history of install/check fragility on some platforms, so it’s kept optional (Suggests, not Imports) rather than force-loaded by library(forecastsuite). Once installed, Prophet’s changepoint/seasonality/holiday priors are exposed on the Model tab like any other model’s parameters, saved/restored with a project file, and included in the “Show Code” panel.

LSTM support (optional)

install.packages("torch")
torch::install_torch()

Everything else works without torch — list_models() simply omits LSTM until it’s installed. Once available, its epochs / hidden units / lookback window / learning rate are exposed on the Model tab like any other model’s parameters, saved/restored with a project file, and included in the “Show Code” panel.

Documentation (contributors)

Every exported function has real roxygen2 comments in its R/ source, but NAMESPACE/man/*.Rd are regenerated from them, not hand-edited. After changing a function’s documentation or @export status:

Rscript document.R

(installs roxygen2 if needed, then runs roxygen2::roxygenise()). Commit the updated NAMESPACE/man/.

Relationship to the hosted app

R/data_utils.R, R/metric_utils.R, R/holidays_helpers.R, and R/horizon_utils.R are adapted from the parent repo’s helpers/ files (same behavior, package-namespaced). They are intentionally copied, not shared, so this package and the hosted app can evolve independently without one destabilizing the other. If you fix a bug in one copy, check whether the other needs the same fix.

mirror server hosted at Truenetwork, Russian Federation.