Deploying Your Application
Slide Contents
Options
| Platform | Cost | Notes |
|---|---|---|
| Posit Connect Cloud | Free tier | Easiest, GitHub-based deploy |
| Render.com | Free tier | PaaS managed web service deployment |
| shinyapps.io | Free tier | Deprecated - Move to Posit Cloud after 2026 |
| Posit Connect (self-hosted) | Paid | Enterprise, on-prem |
| Shinylive | Free | Runs entirely in the browser (no server) |
requirements.txt is required
Posit Connect Cloud installs packages from requirements.txt before running your app.
requirements.txt
shiny
palmerpenguins
plotnine
pandas
If a package isnβt listed, the deployed app will crash with an ImportError.
Deploy to Posit Connect Cloud
- Go to https://connect.posit.cloud and sign in with GitHub
- Click New Content β Import from GitHub
- Select your repository and branch
- Set the Entry point to your
app.py - Click Deploy
Thatβs it. Posit Connect Cloud handles the environment.
Updating a deployed app
Push to the connected branch, and Connect Cloud redeploys automatically.
Or click Redeploy in the Connect Cloud dashboard.
Shinylive: no server required
Compile your app to WebAssembly and host it as a static site:
shinylive export app/ site/Limitations:
- No file I/O, no database connections
- Package support is limited to what Pyodide supports
- Startup is slower (downloads Python + packages to browser)
Great for: demos, tutorials, sharing one-off apps.
Exercise
See exercise: Deploy Your App.