A Shiny Dashboard Template Modular System with Chat Bot Support

A template dashboard system with AI agent integrated. Comes with default themes that can be customized. Developers can upload modified templates on 'Github', and users can easily download templates with 'RStudio' project wizard. The key features of the default template include light and dark theme switcher, resizing graphs, synchronizing inputs across sessions, new notification system, fancy progress bars, and card-like flip panels with back sides, as well as various of 'HTML' tool widgets.


A Shiny Template System

CRAN status R-CMD-check

The goal of shidashi is to provide framework for R-shiny templates, especially for dashboard applications.

*Default template (using [AdminLTE](https://adminlte.io/)) provides two themes: light vs dark*

Installation

You can install the released version of shidashi from CRAN with:

install.packages("shidashi")

Demo & Tutorial Application

The demo app requires to install the following extra packages

install.packages(c("ggExtra", "rmarkdown"))

Once you have installed these packages, run the following command from R:

library(shidashi)
project <- file.path(tools::R_user_dir('shidashi', which = "data"), "AdminLTE3")

# `use_template` only needs to be called once
use_template(project)
render(project)

Start From Existing Templates

To start a shidashi project, open RStudio menu from the navigation bar:

File > New Project... > New Directory > Shidashi Shiny Template (*)

*You might need to scroll down to find that template option.

Please enter the project information accordingly. By default, the Github user is dipterix, and theme is AdminLTE3, which lead to the default template.

Bare-bone Template

If you want to start from a bare-bone template, change the theme option to be AdminLTE3-bare.

File Structure

A typical shidashi project has the following file structure:

<project root_path>
├─modules/
│ └─<module ID>           - Module folder; folder name is module ID
│   ├─R                   - Module functions shared across UI and server
│   ├─module-ui.html      - Module HTML template
│   └─server.R            - Module-level server function
├─R/                      - Common functions shared across modules
├─views/                  - Small snippets (see `?include_view` function)
├─www/                    - Static files: css, js, img, ...
├─index.html              - Template for homepage
├─modules.yaml            - Module label, order, icon, badge..
└─server.R                - Root server function, usually no modification is required

Contribute

Create your own Github repository with name shidashi-templates. Add folders named by the themes. Then people can install your themes as templates through RStudio. An easy start is to fork this repository.

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.

install.packages("shidashi")

0.3.0 by Zhengjia Wang, 4 days ago


https://dipterix.org/shidashi/, https://github.com/dipterix/shidashi


Report a bug at https://github.com/dipterix/shidashi/issues


Browse source code at https://github.com/cran/shidashi


Authors: Zhengjia Wang [cph, aut, cre] (ORCID: , ColorlibHQ [cph] (AdminLTE - Bootstrap 4 Admin Dashboard) , Bootstrap contributors [ctb] (Bootstrap library) , Twitter , Inc [cph] (Bootstrap library) , Ivan Sagalaev [ctb, cph] (highlight.js library) , Rene Haas [ctb, cph] (OverlayScrollbars library) , Zeno Rocha [ctb, cph] (Clipboard.js library)


Documentation:   PDF Manual  


MIT + file LICENSE license


Imports utils, tools, bslib, digest, ellmer, fastmap, formatR, httr2, S7, shiny, shinychat, yaml, jsonlite, htmltools, htmlwidgets, later, promises

Suggests cli, coro, logger, processx, rstudioapi, httpuv, ggplot2, ggExtra, testthat, withr


Suggested by ravepipeline.


See at CRAN