Skip to content
Real Time

Real Time Collaboration Across
Every Task and Project

Pusher WebSocket channels per user. Instant events for assignments, status changes, comments, uploads, and whiteboard edits.

Real Time
How it works

From a workspace action to every teammate's screen in under a second

TARO uses Pusher WebSocket channels to push every workspace event instantly. No polling, no refreshes.

1

Channels

A dedicated channel for every user, project, and whiteboard.

When a user opens TARO, the client subscribes to Pusher private and presence channels scoped to their access: a personal channel, project channels for every project they belong to, and whiteboard channels.

2

Events

Five event types cover every action that matters to the team.

Every action in TARO fires a WebSocket event pushed to relevant subscribers in real time. Each event carries a structured payload (task ID, actor, new state), so the client updates its UI without re-fetching.

3

Sync

Three tabs open. All three update the instant anything changes.

A member might have the Kanban board in one tab, the task detail in a second, the dashboard in a third. When a status changes in any tab, or a teammate changes it, all three update at once. No stale tab.

4

Reconnect

Connection dropped? TARO reconnects and fills every gap.

Network drops happen: a laptop sleeps, a network switches, a VPN reconnects. TARO detects the disconnection, reconnects via Pusher, and requests a full catch-up so no change is missed. The reconnection is silent.

  • Connection dropped
  • Reconnection attempted
  • Event catch up replayed
  • All surfaces current
Why Real Time Collaboration

Six reasons teams never go back

A shared workspace that needs a refresh to show what happened 30 seconds ago isn't shared. It's a document everyone overwrites separately.

Zero polling lag pushed the moment it happens

Zero polling lag pushed the moment it happens

TARO doesn't poll the server on a timer. Every event is pushed via WebSocket the moment it occurs, sub-second delivery to every connected teammate.

Channels scoped per user no broadcast storm

Channels scoped per user no broadcast storm

Events go only to members of the relevant project or channel. A change in the Payments project doesn't fire to users without access. Private and fast.

All open tabs update from one connection

All open tabs update from one connection

A single Pusher subscription serves every tab in the same browser session. A status change isn't re-fetched per tab; one event propagates to all tabs at once.

Whiteboard edits sync stroke by stroke

Whiteboard edits sync stroke by stroke

Whiteboard collaboration doesn't batch: every stroke, move, and text edit fires its own event. Collaborators see what's drawn as it's drawn, with per-person cursors.

Reconnection fills every gap automatically

Reconnection fills every gap automatically

No event is lost during a disconnect. On reconnect, the client requests a full catch-up: every missed status change, comment, and upload is replayed.

Comments appear without reopening the task

Comments appear without reopening the task

When a teammate comments on a task you have open, it renders immediately. No reload prompt. The thread is a live feed, not a static page.

Who uses it
Deepak MehrotraDeepak MehrotraDeepak MehrotraDeepak Mehrotra

800+

product teams

Built for every team working on the same project at the same time

Real-time collaboration makes every TARO feature trustworthy. A Kanban board nobody refreshes is one nobody trusts. When every change appears instantly, the workspace is the single source of truth.

5

Live event types

0ms

Polling lag

All

Tabs synced per event

0

Events lost on reconnect

Remote Engineering Teams

The task Marcus moves at 2pm in London appears on Priya's Kanban board in Mumbai at 2pm in London.

Remote teams can't refresh to see changes. When Marcus marks auth done in London, Priya's Kanban in Mumbai updates instantly; when Sarah uploads a doc, it appears in James's panel.

More from TARO

Real time sync is what makes every other feature trustworthy.

The Kanban board, risk alerts, sprint burndown, and analytics dashboard all depend on real-time event delivery.

Kanban Board

Every card drag fires a status change event via the project channel; all teammates' boards update the instant a card moves.

Risk Alerts Dashboard

Alert state changes (new alerts firing, resolving, escalating) are pushed via WebSocket, so the risk dashboard is always live.

Time Tracking

Active timer events are pushed to the dashboard widget in real time; leads see who starts and stops sessions across the team without polling.

Analytics & Dashboards

Dashboard widget data (burndown charts, active task counts, workload bars) updates on every task event pushed via WebSocket, no reload needed.

Questions & answers

Everything you need to know about Real Time Collaboration

Common questions from engineering leads, CTOs, and PMs evaluating TARO's real-time infrastructure.

TARO uses Pusher Channels as the WebSocket transport. When a user opens the app, the client opens a WebSocket connection to Pusher and subscribes to private and presence channels scoped to their memberships. When a meaningful event occurs on the server, TARO's backend publishes it to the relevant channel via the Pusher HTTP API, and Pusher pushes it to subscribed clients in sub-second time. TARO never polls.
The Pusher client library detects the disconnection via a failed heartbeat and begins reconnection using exponential backoff. On reconnection, the client sends a catch-up request for all events that fired on its channels during the disconnection. The server replays these in order, so every missed status change, comment, and assignment is applied. The catch-up is silent: no banner, no refresh, no data loss.
TARO uses Pusher private channels that require server-side authentication to subscribe. When a user subscribes, the client sends an auth request to TARO's server, which checks whether the user has access to what the channel represents and only issues a token if so. A non-member of a project can't subscribe to its channel or receive its events. Real-time uses the same access control as the rest of the app.
Yes, a single Pusher channel subscription serves all browser tabs open in the same session. Pusher's client library uses a shared WebSocket connection across tabs, so when an event fires, all subscribed tabs receive it at once. Each tab's UI processes it independently, so one status change updates the Kanban board, task detail, and dashboard widget in different tabs from a single push. No tab shows outdated state.
Whiteboard collaboration uses a Pusher channel per board (private-whiteboard-{board_id}). Every action (a stroke, a shape resize, a text edit, an element move or delete) fires an event with a payload of operation type, element ID, and new state. Receiving clients apply each operation via operational transform, so edits from multiple collaborators merge correctly. Cursors broadcast as presence events in real time.
End-to-end latency has three parts: server processing (typically under 50ms), Pusher transport (under 100ms for same-region clients), and client render (usually a single cycle under 16ms). Total latency from an action to all other connected teammates seeing the update is typically under 200ms same-region and under 400ms cross-region. That's well below perceptible lag.
Taro · AI project management

Taro plans, tracks, and flags risks before they hit.

Keep every project on track with AI that spots slippage early and tells your team what to do next.

87%
on-time delivery
2.4x
team throughput
0
deadlines missed
35%
fewer status meetings
Worksbuddy© 2026 Worksbuddy