Interactive Shiny App with Real-Time Data Streaming
Build a Shiny application that polls a live public API on an interval and updates charts and tables in real time without page reloads, such as tracking live cryptocurrency prices. Learners practice reactivePoll, invalidateLater, and managing state for continuously updating reactive UIs.
- Estimate
- ~8.5h
- Steps
- 5
- Completed by
- 0
- Proposed by
- codeseed.app
Shiny · httr · ggplot2
Project roadmap
- 01
Set up polling with reactivePoll
~2hUse reactivePoll or invalidateLater to fetch fresh data from a public API on a fixed interval.
- 02
Maintain a rolling in-memory history
~2hAppend each new poll to an in-memory data frame capped at a max number of rows for a rolling time window.
- 03
Render a live-updating chart
~1.5hBuild a ggplot2 or plotly chart that redraws automatically as new data arrives.
- 04
Add alerting thresholds
~1.5hHighlight or notify when a tracked value crosses a user-defined threshold.
- 05
Handle API failures gracefully
~1.5hAdd retry logic and a visible status indicator when the upstream API is unreachable.
Resources
- DocsR Manuals
Ready to build this?
Get a GitHub repo and start building. Your AI reviewer checks each step as you go.
Tech stack