Overview
artshiny provides shared Shiny UI components and helpers for the Artalytics platform. This package centralizes common interface patterns used across multiple app modules, ensuring consistency and reducing code duplication.
Installation
pak::pkg_install("artalytics/artshiny")Components
Reactive App Data
Initialize reactive state for module development with pre-loaded artist/artwork context:
# In a module's run_app() function
server <- function(input, output, session) {
r <- artshiny::reactive_appdata(artist = "746b8207-...")
myModuleServer("id", r)
}Statistics Box Module
Reusable statistics display module with customizable icons and values:
# UI
statsBoxUI("my_stats", icon = "chart-line")
# Server
statsBoxServer("my_stats", r_stat_value = reactive(42), stat_label = "Total Artworks")Loading Screens
Customizable loading screens with artwork-themed animations:
# Get waiter HTML for loading screen
wait_art_html(msg = "Processing artwork...", type = "designs", which = 1)