Live
OpenShift 5 observability adds autonomous troubleshooting with LightspeedPartitioned __cf_bm cookie enables Bot Management continuity in third‑party iframesAI Production Architecture: Lessons from Microsoft Ignite’s Frontier TransformationBorderless Lakehouse Redefines Data Access for AI AgentsDynamic Model Switching in Gemini 4 Cuts Coding Agent Latency and Token CostRunning SGLang‑Neuron on AWS Trainium: Architecture and Ops GuideTerraform v5.29.0 adds full namespace control for Cloudflare AI SearchBeyond Token Pricing: Managing Amazon Bedrock Cost per TaskOpenShift 5 observability adds autonomous troubleshooting with LightspeedPartitioned __cf_bm cookie enables Bot Management continuity in third‑party iframesAI Production Architecture: Lessons from Microsoft Ignite’s Frontier TransformationBorderless Lakehouse Redefines Data Access for AI AgentsDynamic Model Switching in Gemini 4 Cuts Coding Agent Latency and Token CostRunning SGLang‑Neuron on AWS Trainium: Architecture and Ops GuideTerraform v5.29.0 adds full namespace control for Cloudflare AI SearchBeyond Token Pricing: Managing Amazon Bedrock Cost per Task
Cloudflare

RealtimeKit Whiteboard Plugin Adds Built‑In Collaborative Boards to Meeting Apps

AI SummaryPowered by AI

Cloudflare now provides a Whiteboard plugin that can be attached to RealtimeKit meetings through the standard plugins API. This lets engineers add a fully hosted, synchronized whiteboard without building or operating their own real‑time drawing service, simplifying architecture and operational responsibilities.

Cloudflare has introduced a Whiteboard plugin for RealtimeKit, allowing developers to embed a collaborative drawing surface directly into live audio/video meetings. The change is delivered as a hosted iframe that authenticates participants with a token passed in the URL fragment, removing the need to provision, scale, or secure a custom whiteboard backend.

Integrating the Whiteboard Plugin

The plugin is added using the same plugins API that RealtimeKit already supports. An iframe is created, sized to fill its container, and pointed at the hosted URL https://whiteboard-v2.plugins.realtime.cloudflare.com/ with the participant’s auth token appended after a #. The fragment is URL‑encoded to avoid accidental transmission in HTTP requests.

const WHITEBOARD_URL = "https://whiteboard-v2.plugins.realtime.cloudflare.com/";
function createWhiteboard(authToken) {
  const iframe = document.createElement("iframe");
  iframe.style.width = "100%";
  iframe.style.height = "100%";
  iframe.style.border = "none";
  iframe.allow = "clipboard-read; clipboard-write";
  iframe.referrerPolicy = "no-referrer";
  iframe.src = `${WHITEBOARD_URL}#authToken=${encodeURIComponent(authToken)}`;
  return iframe;
}
const whiteboardElement = createWhiteboard("");

When initializing the RealtimeKit SDK, the returned whiteboardElement is supplied as the plugin’s component. Cloudflare’s documentation provides registration snippets for web, Android, iOS, and React Native, so the same pattern works across client platforms.

Architectural Impact

Using the hosted plugin shifts the whiteboard’s real‑time synchronization, persistence, and access‑control logic from the application stack to Cloudflare’s service. Engineers no longer need to provision a separate server that broadcasts drawing strokes, stores board state, or enforces opening permissions. The meeting application can focus on media handling and core business logic while the plugin handles collaborative drawing.

Because the plugin runs in an isolated iframe, it does not inherit the parent page’s address or cookies. The referrerPolicy="no-referrer" further limits information leakage. The only credential crossing the boundary is the auth token in the fragment, which is never sent to the origin server but is available to the iframe’s JavaScript.

Operational and Security Considerations

  • Token handling: The auth token must be scoped appropriately for whiteboard access, as it is exposed to the client side. Developers should ensure the token’s lifetime and permissions match the intended meeting duration.
  • Isolation: The iframe sandbox isolates the whiteboard code from the host page, reducing the attack surface of the meeting UI. However, any JavaScript running inside the iframe can still interact with the clipboard because of the allow attribute.
  • Operational load: Offloading drawing synchronization to Cloudflare eliminates the need to monitor latency, scaling, or storage for a custom whiteboard service. Teams should still monitor the overall meeting latency to ensure the added iframe does not introduce perceptible delays.
  • Compliance and data residency: Since the whiteboard data is stored and processed by Cloudflare, organizations must verify that the service’s data handling aligns with their regulatory requirements.

Related CloudNinjas coverage: hands-on guides.

What This Means For Practitioners

Adopting the Whiteboard plugin lets engineers add a fully functional collaborative canvas to RealtimeKit meetings with a few lines of code, while delegating real‑time state management to Cloudflare. The primary actions are to generate a meeting‑scoped auth token, embed the iframe as shown, and register the plugin in the SDK. Teams should audit token scopes, confirm compliance posture, and monitor meeting performance, but they can avoid building, scaling, and securing a custom whiteboard service altogether.

Originally published atCloudflare Developer Platform