Getting Started
Prerequisites
Before you begin, make sure the publisher machine has:
- Windows (10 or 11)
- R ≥ 4.0 installed — download from CRAN
- The following R packages:
install.packages(c("shiny", "processx", "jsonlite"))End users need none of the above if you bundle portable R during the build.
Step 2 — Create portable R (one-time setup)
Shiny ShareBridge can bundle a stripped-down copy of R inside every deployment so end users need nothing installed. You only do this once per R version.
- Open
PublishApp.hta - Expand Framework setup
- Browse to your full R installation (e.g.
C:\Program Files\R\R-4.5.1) - Click Create portable R
- Wait for the green success bar
This creates R-portable-master/ in the framework folder. Future builds copy from there automatically.
Skip this step if your end users already have R installed. Shiny ShareBridge will use their system R as a fallback.
Step 3 — Open the Publisher UI
Double-click PublishApp.hta in the framework root. A browser window opens with the Publisher interface.
If your environment blocks .hta files via Group Policy, use publish.bat instead — it opens the same UI in a console window.
Step 4 — Fill in your app details
-
Select source folder
Click Browse next to App folder and select the folder containing yourapp.R(orui.R+server.R). Shiny ShareBridge validates the structure immediately and shows a green badge if it looks correct. -
Review detected packages
Shiny ShareBridge scans your app code and lists all packages it found. Review the dependency notes and preflight checks, then add any extras the scanner might miss (dynamic loading, etc.) in the Additional packages box. -
Set the output folder
This is where the deployable folder will be created. It is auto-filled based on the app name. Change it if needed. -
Review the build summary
A summary panel appears above the Build button showing: app name, package count, portable R status, and any advanced options. Confirm everything looks right.
Step 5 — Build
Click Build deployment. The progress overlay tracks each phase:
| Phase | What is happening |
|---|---|
| Setting up folder | Creating output directory structure |
| Copying portable R | Robocopy of ~50 MB stripped R installation |
| Detecting dependencies | Scanning app code |
| Downloading packages | Fetching from CRAN |
| Installing packages | Unpacking binaries into packages/ |
| Compiling from source | Only when no binary is available (shows a shimmer bar) |
| Verifying | Load-testing every bundled package |
| Done | Health check runs automatically |
Typical build times:
- Simple app, 3–5 packages — 2–4 minutes
- Dashboard, 10–15 packages — 5–10 minutes
- Complex app with source compilation — up to 20 minutes (first build only)
Subsequent builds of the same app are faster because packages are already on disk — only changed ones are reinstalled.
Step 6 — Health check and test launch
After a successful build, Shiny ShareBridge automatically runs a health check that verifies:
- All required framework files are present
- The
app/folder exists - Every package in
req.txtis bundled inpackages/ - Portable R is bundled
- Pandoc is in place (if the stub folder exists)
Then click Test launch to open the app exactly as an end user would.
If a build fails or a warning needs review, open Publisher logs and download the diagnostics zip. It includes the current log, selected saved log, package list, preflight notes, and health-check details when available.
Before presenting an app for team review, download the Readiness report and IT checklist from the Preflight panel. After a successful build, download User instructions from the success bar for the handoff package.
Step 7 — Distribute
- Copy the output folder to SharePoint or a OneDrive-synced location
- Tell users to sync it locally
- Tell users to open
LaunchApp.hta— that is all they need to do
On first launch, users are offered a desktop shortcut automatically.
If you distribute a zip instead of a synced folder, zip the complete Publisher output. Users who do not have R installed need the bundled R/ folder in that zip.
Publishing to Posit Connect Cloud and Hugging Face
For hosted publishing, publish the Shiny app source rather than the ShareBridge deployment folder. Posit Connect Cloud expects a public GitHub repository with a primary file such as app.R and a manifest.json created by rsconnect::writeManifest().
When the Publisher UI itself runs on Connect Cloud or Hugging Face, use Browse… to upload a local app folder into the hosted session. Hosted sessions can inspect readiness, create review reports, and build a downloadable zip, but they cannot browse arbitrary paths on your computer or create Portable R from your local Windows R installation.
For Hugging Face Spaces, use the Space repository:
git clone https://huggingface.co/spaces/Prigas89/Shiny_ShareBridgeSee Cloud Publishing for the ShareBridge-specific hosted publishing workflows.
What’s next?
- Publisher Guide — detailed reference for all publisher options
- Cloud Publishing — publish the same app source to Posit Connect Cloud or Hugging Face Spaces
- User Guide — what to tell your end users
- Reference — all config files, CLI arguments, and env vars