RDesk

RDesk hex logo

CRAN status Lifecycle: experimental R-CMD-check pkgdown MIT license Windows

Package R analyses into self-contained native desktop applications with zero network port requirements.


RDesk packages your R analysis into a standalone desktop application for Windows (with future support planned for macOS and Linux). Instead of running an HTTP server and opening a browser tab, RDesk uses a native launcher plus an embedded webview so the app runs offline with local IPC only.

Quick Start

# Install from CRAN
install.packages("RDesk")

# Scaffold an interactive app
RDesk::rdesk_create_app("MyApp")

# Run it immediately
source("MyApp/app.R")

When you are ready to ship:

RDesk::build_app(
  app_dir         = "MyApp",
  app_name        = "MyApp",
  build_installer = TRUE
)

# Windows -> dist/MyApp-1.0.0-setup.exe (or dist/MyApp-1.0.0-windows.zip)

Windows produces a standalone installer or portable zip distribution (with macOS and Linux packaging in active development). No separate R installation or browser server is required on the target machine when using the bundled runtime.

Development version

devtools::install_github("Janakiraman-311/RDesk")

Why RDesk?

Feature Shiny RInno (archived) Electron + R RDesk
Network ports required Yes Yes Yes No
Works fully offline No Partial Partial Yes
Native file dialogs and menus No No Via JS Yes
Distribution format Server URL Installer Installer Bundle or installer
Bundle size Server-side 350 MB+ 350-500 MB ~200 MB
Skills required R R + Electron R + Node.js R only

Core Features

Who It’s For

RDesk is built for R developers who need to package a local statistical or data tool for non-R users.

Example Apps

Two apps ship with RDesk demonstrating different complexity levels.

CarsAnalyser - minimal dashboard

app_dir <- system.file("apps/mtcars_dashboard", package = "RDesk")
source(file.path(app_dir, "app.R"))

Data Intelligence Studio - full-featured data profiling tool

app_dir <- system.file("apps/data_studio", package = "RDesk")
source(file.path(app_dir, "app.R"))

Documentation

Full documentation is available at janakiraman-311.github.io/RDesk.

Guide What it covers
Getting Started From install.packages() to your first native app
Coming from Shiny Side-by-side mapping of common Shiny patterns to RDesk
Async Guide Background tasks, progress overlays, cancellation
Cookbook Practical desktop-app recipes
Why RDesk? Project background and architecture

License

MIT (c) Janakiraman G.