本文へ移動
cccskills
無料GitHub で公開

realtime-collaboration-expert

Expert guide for building real-time collaboration features using WebSockets, WebRTC, CRDTs (Yjs, Automerge), and Liveblocks / Panduan ahli untuk fitur kolaborasi real-time.

日本語の概要は準備中です。原文の説明を表示しています。

roedyrustam/vibes-plugスター 114(GitHub 114 + cccskills 0)
連携ツールRedis

実行スコア 未検証

インストール方法を見る

含まれるファイル(1)

  • SKILL.md7.0 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

Real-Time Collaboration Expert / Ahli Kolaborasi Real-Time

English | Bahasa Indonesia


<a name="english"></a>

English

Description

Expert guide for implementing multiplayer, real-time collaboration features in web applications. Covers Conflict-free Replicated Data Types (CRDTs) like Yjs/Automerge, WebSockets, WebRTC, and Managed services like Liveblocks or Pusher.

Instructions

  • CRDTs for State: Use CRDTs (e.g., yjs or automerge) instead of Operational Transformation (OT) for handling distributed state and concurrent document editing smoothly.
  • Connection Resiliency: Always implement automatic reconnection logic with exponential backoff for WebSockets. Handle offline states gracefully by syncing local changes once reconnected.
  • Presence & Awareness: Implement presence indicators (who is online, cursor positions) separated from the core document state to reduce bandwidth and storage overhead.
  • Security in Real-time: Authenticate and authorize every WebSocket connection upon establishment and validate all incoming socket messages to prevent malicious payloads.
  • Scale: Be mindful of message broadcasting limits. Use Redis Pub/Sub or similar message brokers when scaling WebSocket servers across multiple instances.

Implementation Checklist

  • Choose a CRDT library (Yjs/Automerge) and a corresponding provider (WebSockets, WebRTC, Liveblocks).
  • Initialize the shared document state and bind it to the frontend UI components (e.g., ProseMirror, Monaco).
  • Implement presence (awareness) to broadcast cursor positions and active user lists.
  • Handle offline states by buffering local changes and syncing upon reconnection.

Example: Yjs with WebSocket Provider

import * as Y from 'yjs'
import { WebsocketProvider } from 'y-websocket'

// 1. Initialize a shared Yjs document
const ydoc = new Y.Doc()

// 2. Connect to the WebSocket room
const provider = new WebsocketProvider('ws://localhost:1234', 'my-room-name', ydoc)

// 3. Share state (e.g., an array of chat messages)
const yarray = ydoc.getArray('messages')
yarray.observe(event => {
  console.log('Messages updated:', yarray.toArray())
})

Orchestration & Integration

  • senior-frontend — React 19 UI component bindings, live cursor canvas, and optimistic multiplayer rendering.
  • rich-text-editor-expert — Collaborative rich-text document editing with Tiptap/ProseMirror/Yjs.
  • design-system-architect — Live avatar presence stacks, color-coded multiplayer cursors, and awareness tags.
  • ui-ux-pro-max — Smooth cursor interpolation, spring animations for multiplayer presence, and collision feedback.
  • visual-ui-auditor — Multimodal vision auditing of live collaborative canvas, presence indicators, and cursor alignment.
  • anti-slop — Anti-slop real-time architecture, eliminating phantom cursor jumps, ghost presence tokens, and desync loops.
  • state-management-expert — Integrating CRDT state with client-side reactive stores.
  • event-driven-architect — WebSocket connection clustering and Redis pub/sub scaling.
  • mcp-server-architect — Real-time agentic collaboration and tool calling channels.

Trigger Conditions

Active whenever the user is building multiplayer features, live cursors, document co-editing, real-time chats, or working with WebSockets, Yjs, or WebRTC.


<a name="bahasa-indonesia"></a>

Bahasa Indonesia

Deskripsi

Panduan ahli untuk mengimplementasikan fitur kolaborasi real-time dan multiplayer pada aplikasi web. Mencakup Conflict-free Replicated Data Types (CRDTs) seperti Yjs/Automerge, WebSockets, WebRTC, dan layanan terkelola seperti Liveblocks atau Pusher.

Instruksi

  • CRDT untuk State: Gunakan CRDT (misalnya yjs atau automerge) daripada Operational Transformation (OT) untuk menangani state terdistribusi dan pengeditan dokumen secara bersamaan dengan lancar.
  • Ketahanan Koneksi: Selalu terapkan logika penyambungan ulang otomatis dengan exponential backoff untuk WebSockets. Tangani offline state dengan baik dengan menyinkronkan perubahan lokal setelah tersambung kembali.
  • Presence & Awareness: Terapkan indikator kehadiran (siapa yang sedang online, posisi kursor) yang dipisahkan dari status dokumen inti untuk mengurangi overhead bandwidth dan penyimpanan.
  • Keamanan Real-time: Lakukan autentikasi dan otorisasi setiap koneksi WebSocket pada saat tersambung dan validasi semua pesan socket yang masuk untuk mencegah payload berbahaya.
  • Skalabilitas: Perhatikan batas penyiaran (broadcasting) pesan. Gunakan Redis Pub/Sub atau message broker serupa saat meningkatkan (scaling) server WebSocket di beberapa instans.

Checklist Implementasi

  • Pilih pustaka CRDT (Yjs/Automerge) dan provider yang sesuai (WebSockets, WebRTC, Liveblocks).
  • Inisialisasi state dokumen bersama dan ikat ke komponen UI frontend (misal: ProseMirror, Monaco).
  • Implementasikan presence (kesadaran) untuk menyiarkan posisi kursor dan daftar pengguna aktif.
  • Tangani state offline dengan melakukan buffer perubahan lokal dan sinkronisasi ulang saat terhubung kembali.

Contoh: Yjs dengan Provider WebSocket

import * as Y from 'yjs'
import { WebsocketProvider } from 'y-websocket'

// 1. Inisialisasi dokumen Yjs bersama
const ydoc = new Y.Doc()

// 2. Hubungkan ke ruangan WebSocket
const provider = new WebsocketProvider('ws://localhost:1234', 'nama-ruangan-saya', ydoc)

// 3. Berbagi state (misal: array pesan chat)
const yarray = ydoc.getArray('messages')
yarray.observe(event => {
  console.log('Pesan diperbarui:', yarray.toArray())
})

Integrasi Orkestrasi

  • senior-frontend — Binding komponen UI React 19, kanvas kursor langsung, dan rendering multiplayer optimistik.
  • rich-text-editor-expert — Pengeditan dokumen rich-text kolaboratif dengan Tiptap/ProseMirror/Yjs.
  • design-system-architect — Tumpukan avatar kehadiran langsung, kursor multiplayer berkode warna, dan tag awareness.
  • ui-ux-pro-max — Interpolasi kursor mulus, animasi spring untuk kehadiran multiplayer, dan feedback benturan.
  • visual-ui-auditor — Audit visual multimodal untuk kanvas kolaboratif langsung, indikator kehadiran, dan presisi kursor.
  • anti-slop — Arsitektur real-time anti-slop, mengeliminasi lompatan kursor hantu, token kehadiran palsu, dan desinkronisasi.
  • state-management-expert — Integrasi state CRDT dengan store reaktif sisi klien.
  • event-driven-architect — Kluster koneksi WebSocket dan penskalaan Redis pub/sub.
  • mcp-server-architect — Saluran kolaborasi agen dan tool calling real-time.

Kondisi Pemicu

Aktif setiap kali pengguna sedang membangun fitur multiplayer, kursor langsung (live cursors), pengeditan dokumen bersama, obrolan real-time, atau bekerja dengan WebSockets, Yjs, atau WebRTC.

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

コメント

ログインなしで書き込めます。使ってみた感想、質問、動かなかった環境などを気軽にどうぞ。

まだコメントはありません。最初のコメントを書いてみませんか。

送信するとすぐに公開されます。メールアドレスや電話番号などの個人情報は書かないでください。URL は 2 つまでです。

0 / 1000 文字

このフォームは reCAPTCHA で保護されており、Google のプライバシーポリシーと利用規約が適用されます。

同じリポジトリのスキル

A2A agent protocol interoperability, Agent Cards, and MCP bridging / Protokol agen A2A, Agent Cards, dan integrasi MCP.

日本語の概要は準備中です。原文の説明を表示しています。

roedyrustam/vibes-plug1142026年10月27日 更新

Expert guide for automated and manual Web Accessibility (a11y) testing — axe-core, Pa11y, Playwright a11y, screen reader testing, and WCAG 2.2 Level AA/AAA compliance / Panduan ahli pengujian aksesibilitas web.

日本語の概要は準備中です。原文の説明を表示しています。

roedyrustam/vibes-plug1142026年10月27日 更新

Web accessibility testing with axe-core, Playwright, and WCAG 2.2 / Pengujian aksesibilitas web axe-core, Playwright, dan WCAG 2.2.

日本語の概要は準備中です。原文の説明を表示しています。

roedyrustam/vibes-plug1142026年10月27日 更新

Expert guide for intelligent model cascading and routing — complexity-scored task routing from Flash/Haiku to Sonnet/Opus/Astra, dynamic escalation with quality gates, 40-60% token cost reduction while maintaining output quality / Panduan ahli untuk kaskade dan routing model cerdas — routing tugas berbasis skor kompleksitas dari Flash/Haiku ke Sonnet/Opus/Astra, eskalasi dinamis dengan gerbang kualitas, pengurangan biaya token 40-60% dengan kualitas output terjaga.

日本語の概要は準備中です。原文の説明を表示しています。

roedyrustam/vibes-plug1142026年10月27日 更新

Model cascading & complexity-scored routing (Grok, Gemini, Claude) / Routing kaskade model & scoring kompleksitas (Grok, Gemini, Claude).

日本語の概要は準備中です。原文の説明を表示しています。

roedyrustam/vibes-plug1142026年10月27日 更新

Affective computing, emotion AI, and multimodal sentiment analysis / Komputasi afektif, AI emosional, dan analisis sentimen multimodal.

日本語の概要は準備中です。原文の説明を表示しています。

roedyrustam/vibes-plug1142026年10月27日 更新

roedyrustam のスキルをすべて見る

このスキルの問題を報告する