Recently, I have released an R package “ggplotAssist" on CRAN. This is an RStudio add-in for teaching and learning plot generation using ggplot2 package. You can learn each steps of plot generation - aesthetics mapping, select geometries, add scales, apply theme - by clicking your mouse without coding. You can see the resultant plot and see the each steps of plot layer by layer. You get resultant code for ggplot.
To handle functionals in a shiny app, I have included an recursive shiny module ‘textFunction’ in my package.
Please take a look at package vignette:
Recursive shiny module for functionals : https://github.com/cardiomoon/ggplotAssist/blob/master/textFunctionInput.md