Today I’m releasing v0.1 of om_skeleton. It begins where uiStub left off, but now includes user authentication – that is, logging in and logging off.
In other words, om_skeleton is R code for Shiny-server-based web sites that allows multiple pages (the code for each of these pages is in a separate file) and multiple users. The users can:
- verify their email address
- log in
- recover lost passwords
- update their email address
- change their password
- view a home page that shows their user record
- view a page that shows all the registered users and a table of all the pages on the site (with administrative privileges).
In the typical Shiny application, all of the code is loaded at one time. “Paging” is handled by tabs and doesn’t involve loading additional information from disk. For large Shiny websites the downsides of this approach are available memory limits, slow startup speed, and naming issues (unintentionally using the same name twice for different things.)
A paged system based on om_skeleton, on the other hand, will need only a fraction of the whole project’s memory space, will load faster, and has fewer namespace problems because only one page is loaded at at time.