Wrap Up
Slide Contents
What we covered
- Shiny’s input → output → reactivity model
- Building and running your first app
@reactive.calcfor shared computations- Dashboard layouts: sidebars, columns, cards, value boxes
- Shiny modules: reuse UI + server logic without repeating yourself
- Testing with Playwright
- Deploying to Posit Connect Cloud
Handling messy input & secrets
We didn’t have time to cover these, but you’ll want them soon:
req(): stop execution until an input is valid/present, instead of erroringui.notification_show(): tell users what’s wrong instead of failing silentlypython-dotenv: keep API keys and other secrets out of your code with a.envfile
Other cool components to explore
- File upload / download
- Multi-page apps with navbars (
ui.page_navbar(),ui.nav_panel()) - Progress bars for long-running tasks
- Full component gallery
This workshop
Everything from today:
https://github.com/chendaniely/scipy-2026-shiny
Bonus material (AI + LLM dashboards with chatlas, shinychat, querychat) is in the “🎁 Bonus” section of the sidebar. Try it on your own time.
Feedback survey
- Please take 2 minutes to fill out the SciPy session feedback
- It directly influences future tutorial selections