Live & Connected
Real Time Block

Real Time Block

WebSockets, WebRTC, and instant messaging for any application

Build chat applications, video calls, live collaboration, and real-time dashboards. Persistent connections, presence tracking, and message history out of the box.

<10ms
Message Latency
1M+
Concurrent Connections
99.99%
Uptime SLA
WebRTC
Video & Audio

Complete Real-Time Infrastructure

Everything you need for real-time communication, from simple messaging to complex video conferencing.

WebSocket Connections

Persistent bidirectional connections with automatic reconnection, heartbeat, and connection state management.

Channels & Rooms

Organize communication with public, private, and presence channels. Control access with fine-grained permissions.

Presence Tracking

Know who is online with real-time presence updates. Track custom states like typing, away, or busy.

WebRTC Support

Peer-to-peer video, audio, and screen sharing. We handle signaling, TURN servers, and ICE negotiation.

Message History

Persist and retrieve past messages with pagination. Configure retention periods and search through history.

Broadcast Events

Send messages to thousands of subscribers instantly. Target specific channels or broadcast to all users.

Real-Time in Minutes

Connect, subscribe, and send messages with just a few lines of code. No server configuration or WebSocket expertise required.

  • Automatic reconnection on network issues
  • Type-safe events with TypeScript
  • React hooks and Vue composables included
  • Works with any JavaScript framework
chat.ts
import { BlocksClient } from '@23blocks/sdk';

// Connect to real-time
const client = new BlocksClient({
  appId: 'your-app-id',
  apiKey: 'your-api-key'
});

// Initialize real-time connection
const realtime = await client.realtime.connect();

// Subscribe to a channel
realtime.subscribe('chat:room-1', (message) => {
  console.log('New message:', message);
});

// Track presence
realtime.presence('chat:room-1')
  .onJoin((user) => console.log('Joined:', user))
  .onLeave((user) => console.log('Left:', user));

// Send a message
realtime.send('chat:room-1', {
  text: 'Hello, everyone!',
  user_id: 'user_123'
});

Built for Any Real-Time Use Case

From simple chat to complex video conferencing, Real Time Block powers all your communication needs.

Chat Applications

Build feature-rich chat with typing indicators, read receipts, reactions, and thread replies.

  • Typing indicators
  • Read receipts
  • Message reactions
  • Thread replies

Live Collaboration

Enable multiplayer editing with live cursors, shared state, and conflict resolution.

  • Live cursors
  • Shared state sync
  • Conflict resolution
  • User awareness

Video Conferencing

Add video calls with screen sharing, recording, and virtual backgrounds.

  • HD video/audio
  • Screen sharing
  • Recording
  • Virtual backgrounds

Enterprise-Ready Features

Built for scale, security, and reliability from day one.

Auto-Reconnect

Automatic reconnection with exponential backoff and offline message queueing.

End-to-End Encryption

Optional E2EE for sensitive communications with key management.

Global Edge Network

Low-latency connections from edge servers around the world.

Real-Time Analytics

Monitor connections, messages, and performance in real-time.

Seamless Integration

Use with your favorite frameworks and platforms

React
Vue.js
Angular
React Native

Add Real-Time to Your App Today

Start with our generous free tier. No credit card required.

Stay in the loop

Get product updates, engineering posts, and new block announcements delivered to your inbox.

No spam. Unsubscribe anytime. Privacy policy.