Skip to content

Commit 57117ac

Browse files
authored
Updated the table for containers_and_webassembly_submissions.qmd (#109)
Update containers_and_webassembly_submissions.qmd
1 parent b39eddb commit 57117ac

File tree

1 file changed

+23
-23
lines changed

1 file changed

+23
-23
lines changed

posts/2024-02-01_containers_webassembly_submission/containers_and_webassembly_submissions.qmd

+23-23
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ long_slug <- "2023-12-30_containers_webassembly_submission"
2424

2525
<!--------------- post begins here ----------------->
2626

27-
[The R Consortium Submission Working Group](https://www.r-consortium.org/) has now successfully made two pilot submissions to the FDA. All the submissions done by the group are focused on improving practices for R-based clinical trial regulatory submissions. Now, the R submission Working Groups in collaboration with [Appsilon](https://appsilon.com/) and Posit are exploring new technologies such as Containers and WebAssembly. In this article, we dive into the details of this exploration.
27+
[The R Consortium Submission Working Group](https://www.r-consortium.org/) has now successfully made two pilot submissions to the FDA. All the submissions done by the group are focused on improving practices for R-based clinical trial regulatory submissions. Now, the R submission Working Groups, in collaboration with [Appsilon](https://appsilon.com/) and Posit, are exploring new technologies such as Containers and WebAssembly. In this article, we dive into the details of this exploration.
2828

2929
## How Everything Started
3030

@@ -34,19 +34,19 @@ This pilot was initially submitted on November 22, 2021. **This submission was t
3434

3535
## Pilot 2
3636

37-
**This was one of the first submission packages containing a Shiny application**. The main goal of this pilot was to test the submission of an R-based Shiny application bundled into a submission package and transfer it successfully to FDA reviewers. The [submitted application](https://github.com/RConsortium/submissions-pilot2-to-fda) was built using the datasets and analysis that were used for the R Submission Pilot 1. The deployed version of this application is available on [this site](https://rconsortium.shinyapps.io/submissions-pilot2/). Alternatively, a Rhino-based version of the application can be found [here](https://connect.appsilon.com/rhino-fda-pilot/).
37+
**This was one of the first submission packages containing a Shiny application**. The main goal of this pilot was to test the submission of an R-based Shiny application bundled into a submission package and transfer it successfully to FDA reviewers. The [submitted application](https://github.com/RConsortium/submissions-pilot2-to-fda) was built using the datasets and analyses that were used for the R Submission Pilot 1. The deployed version of this application is available on [this site](https://rconsortium.shinyapps.io/submissions-pilot2/). Alternatively, a Rhino-based version of the application can be found [here](https://connect.appsilon.com/rhino-fda-pilot/).
3838

3939
The final response letter from the FDA was reviewed on September 27, 2023.
4040

4141
![](images/teal.png){fig-align="center" width="159"}
4242

43-
In this submission, there were many open-source R packages that were used to create and execute the Shiny application. A very well known shiny-based interactive exploration framework **{teal}** was used mainly for analyzing the clinical trial data; this package is included in the pharmaverse package repository. The full list of open-source and proprietary R analysis packages is available on this [Analysis Data Reviewer's Guide](https://rsubmission-draft.website-us-east-1.linodeobjects.com/) prepared by the R Consortium R Submissions Working Group for the Pilot 2.
43+
In this submission, there were many open-source R packages that were used to create and execute the Shiny application. A very well-known shiny-based interactive exploration framework **{teal}** was used mainly for analyzing the clinical trial data; this package is included in the pharmaverse package repository. The full list of open-source and proprietary R analysis packages is available on this [Analysis Data Reviewer's Guide](https://rsubmission-draft.website-us-east-1.linodeobjects.com/) prepared by the R Consortium R Submissions Working Group for the Pilot 2.
4444

4545
# What's next?
4646

4747
## Pilot 3
4848

49-
This pilot was successfully submitted to FDA on Aug 28, 2023. **This was the first publicly available R [submission](https://github.com/RConsortium/submissions-pilot3-adam-to-fda) that included R scripts to produce ADaM datasets and TLFs**. Both the ADaMs (SDTM .xpt sources from the CDISC Pilot study) and the TLFs (ADaMs .xpt sourced from the ADaMs generated in R by the Pilot 3 team) were created using R.  The next steps for this pilot is to await FDA's review and approval which may take several months to complete.
49+
This pilot was successfully submitted to the FDA on Aug 28, 2023. **This was the first publicly available R [submission](https://github.com/RConsortium/submissions-pilot3-adam-to-fda) that included R scripts to produce ADaM datasets and TLFs**. Both the ADaMs (SDTM .xpt sources from the CDISC Pilot study) and the TLFs (ADaMs .xpt sourced from the ADaMs generated in R by the Pilot 3 team) were created using R.  The next step for this pilot is to await FDA's review and approval, which may take several months to complete.
5050

5151
## Pilot 4
5252

@@ -94,7 +94,7 @@ During the **second iteration**, which was recently held, Pedro Silva shared the
9494

9595
#### The Process
9696

97-
1. **Leverage last 2 iterations of the application**
97+
1. **Leverage the last 2 iterations of the application**
9898

9999
- Reuse as much code as possible
100100

@@ -104,10 +104,10 @@ During the **second iteration**, which was recently held, Pedro Silva shared the
104104

105105
- Replace/shim functionality that was lost from removing dependencies
106106

107-
Here is the list of dependencies to packages on CRAN, those that worked are colored green, those that were removed are marked in orange. We ended up with just 3 problematic dependencies (bold).
107+
Here is the list of dependencies to packages on CRAN; those that worked are colored green, and those that were removed are marked in orange. We ended up with just 3 problematic dependencies (bold).
108108
```
109109
| | |
110-
|------------------------------------|------------------------------------|
110+
|-------------------------------------------|-------------------------------------------|
111111
| [library(config)]{style="color:orange"} | [library(reactable)]{style="color:green"} |
112112
| **library(cowplot)** | [library(rhino)]{style="color:orange"} |
113113
| [library(dplyr)]{style="color:green"} | [library(rtables)]{style="color:green"} |
@@ -121,11 +121,12 @@ Here is the list of dependencies to packages on CRAN, those that worked are colo
121121
| [library(markdown)]{style="color:green"} | [library(Tplyr)]{style="color:green"} |
122122
| [library(pkgload)]{style="color:green"} | [library(utils)]{style="color:green"} |
123123
| [library(purrr)]{style="color:green"} | [library(visR)]{style="color:green"} |
124+
124125
```
125126

126127
Issues with library(cowplot):
127128

128-
- Some issue with low-level dependencies when deployed
129+
- Some issues with low-level dependencies when deployed
129130

130131
Solution:
131132

@@ -153,23 +154,22 @@ Solution:
153154

154155
3. **Leverage shinylive and httpuv to export and serve the application**
155156

156-
a. **Shinylive can help streamline the export process**
157+
a. Shinylive can help streamline the export process
157158

158-
i. **Problems**
159+
i. Problems
159160

160-
1. **shiny.live won't let us have non-R files in the application directory - this is an outstanding bug that George asked us to raise an issue for.**
161+
1. shiny.live won't let us have non-R files in the application directory - this is an outstanding bug that George asked us to raise an issue for.
161162

162-
2. **We wouldn't be able to run the application as a traditional shiny app**
163+
2. We wouldn't be able to run the application as a traditional shiny app.
163164

164-
ii. **Solution:**
165+
ii. Solution:
165166

166-
```
167-
1. **Custom build script**
168-
```
167+
1. Custom build script
168+
169169

170-
b. **{httpuv} can help serve the application**
170+
b. {httpuv} can help serve the application
171171

172-
i. **{httpuv} would run natively on a machine to serve the Shiny app**
172+
i. {httpuv} would run natively on a machine to serve the Shiny app
173173

174174
#### Application Structure
175175

@@ -191,9 +191,9 @@ Some of the issues and solutions found at the very beginning:
191191
i. Shim and used functionality
192192
ii. Use a simple tab system for the UI structure
193193

194-
The FDA were previously told that the shiny application being prepared for the Pilot 4 submission would not be a 1 to 1 mapping from the previous one submitted for the Pilot 2 due to certain constraints such as {teal} not being on CRAN; however, this didn't represent a problem for them since they would mainly like to test the technology.
194+
The FDA was previously told that the shiny application being prepared for the Pilot 4 submission would not be a 1 to 1 mapping from the previous one submitted for the Pilot 2 due to certain constraints such as {teal} not being on CRAN; however, this didn't represent a problem for them since they would mainly like to test the technology.
195195

196-
Pedro Silva, one of the engineers working on the development of this app mentioned **"While WebR is still in development, it shows tremendous promise! The loading is definitely still a pain point (over 100mb to set up the environment!) but it will only get better moving forward."**
196+
Pedro Silva, one of the engineers working on the development of this app, mentioned **"While WebR is still in development, it shows tremendous promise! The loading is definitely still a pain point (over 100mb to set up the environment!) but it will only get better moving forward."**
197197

198198
#### Containers
199199

@@ -234,18 +234,18 @@ Below is the dockerfile (recipe) for the container:
234234

235235
# Next Steps
236236

237-
The next steps are waiting for the review of the Pilot 3 by the FDA and to submit the two sections that explore the new technologies to regulatory authorities. Thanks to the collaboration between the R Submission Working Group and other institutions, there is already a working prototype of a {teal}-like Shiny application running on webR and further exploration with Podman is underway. 
237+
The next steps are waiting for the review of Pilot 3 by the FDA and to submit the two sections that explore the new technologies to regulatory authorities. Thanks to the collaboration between the R Submission Working Group and other institutions, there is already a working prototype of a {teal}-like Shiny application running on webR and further exploration with Podman is underway. 
238238

239239
1. Submission to FDA
240240
2. Rhino Compatibility
241241

242242
![](images/rhino.png){fig-align="center" width="161"}
243243

244-
Appsilon is working on the side with Rhino compatibility, eventually we might be able to just add this framework into the Pilot 4 application.
244+
Appsilon is working on the side with Rhino compatibility; eventually, we might be able to just add this framework into the Pilot 4 application.
245245

246246
3. {teal}
247247

248-
This and other packages might be on CRAN soon. We could incorporate them after that, replacing the shims created for this version
248+
This and other packages might be on CRAN soon. We could incorporate them after that, replacing the shims created for this version.
249249

250250
4. Boot Time
251251

0 commit comments

Comments
 (0)