This file contains guidance targeted for this repository. Notes here should follow organization guidance (see here).
Package Purpose
artshiny provides shared Shiny UI components and helpers for the Artalytics platform. This package centralizes common interface patterns to:
- Maintain visual consistency across app modules
- Reduce code duplication
- Provide tested, reusable UI components
- Simplify cross-module UI updates
Architecture
This is a Core layer package that: - Provides UI infrastructure components - Can be depended upon by Tools and Apps layers - Should NOT contain business logic or data operations - Should remain lightweight and focused on UI patterns
Components
Development Guidelines
- Keep components generic - No business logic
- Document all parameters - Include roxygen2 examples
- Test UI rendering - Use shinytest2 for visual regression
- Minimize dependencies - Only shiny, bslib, waiter, artcore
-
Follow naming convention -
[component]UI()and[component]Server()for modules
Repo Files
- setup-env.sh - This file should contain a minimal install script to setup the dev/test environment for only this package.
- Dockerfile - This file should be used to build the image containing the dev/test environment for only this package.
Task Items
-
-
wait_art_html()usage and parameters -
create_waiter()factory function usage - UI-side setup (
waiter_preloader,useWaiter,useSteward) - Server-side patterns (show/hide, update with messages)
- Cross-module consistency guidelines
-
