Skip to content

Publish the dashboard on GitHub Pages - #7

Merged
macromeer merged 1 commit into
mainfrom
pages-deploy
Oct 6, 2026
Merged

macromeer merged 1 commit into
mainfrom
pages-deploy

Conversation

@macromeer

@macromeer macromeer commented Oct 6, 2026 •

Copy link
Copy Markdown
Owner

Publishes the dashboard as a Shinylive app at https://meer.solutions/scifig_plot_examples_R/. R runs in the visitor's browser (webR), so there is no server.

Workflow (.github/workflows/pages.yaml)

  1. Installs R, the packages from DESCRIPTION (including the app's suggested ones) and shinylive.
  2. Puts app/app.R, R/figure.R, data/ and images/ into _build/app/, the layout the app expects in the bundle.
  3. shinylive::export() to _site/, with the page title "Scientific figure dashboard".
  4. Checks the export: index.html, app.json, and the webR packages ggplot2, patchwork, magick, ragg and svglite. Shinylive leaves out packages that aren't installed where it runs and only warns, so this step makes that fail the build instead.
  5. On main: uploads the site and deploys it with actions/deploy-pages. Pull requests (like this one) only build and check.

Pages is already set to deploy from GitHub Actions, with HTTPS enforced (Shinylive needs a service worker, which browsers allow only over HTTPS).

Other changes

  • README: link to the online app and a screenshot (dashboard.png).
  • .gitignore: _build/, _site/.

Tested

The assemble, export and check steps ran locally on this branch (export OK, packages present, page title set). Locally, the exported app opens in headless Chromium in about 17 s; changing a setting takes 3–4 s.

The deploy job runs only after merge, so the live page appears with the first push to main.

🤖 Generated with Claude Code

A new workflow builds app/ as a Shinylive app (R runs in the visitor's
browser via webR) and deploys it to GitHub Pages on every push to main.
It copies app.R, R/figure.R, data/ and images/ into one folder, exports
it with shinylive::export() and checks that the export contains the
webR packages the figure needs: shinylive leaves out packages that are
not installed where it runs. Pull requests only build and check.

The README links the online app and shows a screenshot. .gitignore
covers the build folders.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@macromeer
macromeer merged commit ecc0ef4 into main Oct 6, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant