FAQ
General
Why does the app take a while to start?
webRios runs R through WebAssembly, which takes 5-15 seconds to load and initialize on first launch. Subsequent launches are faster because your device caches the initialized runtime. See Getting Started for what to expect on your first launch.
What devices does webRios support?
webRios runs on iPhone and iPad. On iPad, the app uses a dual-pane layout with the Console or Editor on the left and the Environment, Plots, Files, Packages, and Help tabs on the right. On iPhone, each tab is full-screen and accessible from the bottom tab bar.
Does the app need an internet connection?
Only for installing R packages. All R computation runs locally on your device, so you can write and run R code completely offline.
Does my R session persist between launches?
No. Each time you open webRios, a fresh R session starts. Variables, loaded packages, and console history from your previous session are not carried over. To preserve your work, save your code as .R files in the Editor and put library() calls at the top of your scripts so packages load automatically when you re-run them.
How much memory can R use?
R has approximately 300 MB of memory available. For most interactive analysis, this is sufficient. If you run out of memory:
Why is the app so large?
webRios uses the webR WebAssembly binary, which is downloaded once and kept locally on your device (~30 MB compressed). This is what allows R to run without a server.
Editor and Files
How do I save my work?
In the Editor, tap the file icon in the toolbar to open the File menu, then choose Save. You can also create new files, open existing ones, and export scripts as GitHub Gists. Your saved .R files appear in the Files tab and persist between sessions.
Where are my files stored?
Files are stored in the app’s sandboxed storage on your device. They persist between sessions but are deleted if you uninstall the app. You can import and export files through the Files tab, which also integrates with the iOS Files app and iCloud Drive.
Why do my quotes look different?
iOS sometimes inserts “smart quotes” (curly quotes) when typing. webRios automatically converts these to straight quotes that R understands, so you shouldn’t notice any issues.
Can I change the editor theme?
Yes. webRios includes 8 color schemes for the code editor. Go to Settings > Editor to pick a different theme. See Editor Themes for a preview of the available options.
Running Code
What are the two ways to run code?
You can run code from both the Console and the Editor. The Console is for quick, one-off commands. The Editor is for writing multi-line scripts that you can save and re-run. In the Editor, a green play button runs the entire script and a blue play button runs only the selected text. See Running Your Code for details.
Can I use ggplot2?
Yes! Install it from the Packages tab. Not all CRAN packages are available, only those compiled for WebAssembly by the webR project.
Can I interrupt running R code?
Currently, R code cannot be interrupted once it starts executing. If you accidentally run a long-running operation, you may need to close and reopen the app. See Known Issues for more details.
Plots
My plot isn’t showing up
Plots appear in the Plots tab after you run code that produces graphics. Make sure you switch to the Plots tab to see them. Plots are stored even if you were on a different tab when the plot was created.
Can I export plots?
Yes. Tap a plot to open it full-screen, then use the share button to save to Photos, AirDrop, copy, or send to any app that accepts images. See Sharing and Exporting for more.
Packages
Why can’t I find a package?
Not all CRAN packages have WebAssembly builds. The webR project maintains a repository of compatible packages at repo.r-wasm.org. Most popular data science packages are available. Packages that depend on external system libraries (like database drivers) are the most likely to be missing. See A note about package availability for more.
Do installed packages persist?
Yes. Packages you install persist between app sessions and are stored in the app’s local storage. However, you still need to load them with library() each time you start a new session. See Loading packages after installation for details.
How do I install packages?
There are two ways. You can use the Packages tab to browse and install packages with a few taps, or you can run install.packages("name") in the Console or Editor. The app also offers Package Bundles that install groups of related packages in one tap.
Other R Apps
How does webRios differ from R Programming Compiler?
R Programming Compiler sends your code to an external server for execution and returns the results, with a 20-second timeout per program. webRios runs R entirely on your device through WebAssembly, so your code never leaves your phone or tablet, there is no timeout, and you can work offline.
How does webRios differ from R Analyst?
R Analyst runs R locally using an older embedded R engine (R 4.2.1, last updated in early 2023) and does not support installing additional packages. webRios uses webR, which tracks recent R releases and lets you install packages from the webR repository.
What about running R through iSH (Alpine Linux)?
The iSH emulator can run Alpine Linux on iOS, and R can be installed through Alpine’s package manager. This gives you access to CRAN packages compiled for Alpine, but compiling packages directly on the device is extremely slow (hours for a single package like stringr). It typically requires cross-compiling on another machine and transferring the built libraries back. We are exploring the possibility of wrapping our editor interface around the iSH emulator to combine a polished UI with native R package installation, which could also support larger datasets by avoiding WebAssembly memory limits.
Need More Help?
Check the Known Issues page for current limitations and workarounds, or visit the Support page to get in touch.
- Email: support@caffeinatedmath.com