~/talk

Real-time collaboration with Rails

slides:none on file

Shows how to add real-time collaborative editing to a Rails app using AnyCable (Go websocket server) and Yjs (CRDT), with benchmarks showing Action Cable slowing to multi-second broadcasts at 10,000 connections while AnyCable stays under a second. Covers reliable streams/history replay, presence via Yjs awareness, server-side compaction/snapshots and a whisper mode that bypasses Rails for cursor updates. Delivers working demos: a Lexi-based realtime editor, an emoji board and an infinite collaborative drawing canvas; YRB Rust bindings used for compaction but require mutexing.

AI-written summary · about

  1. 0:00Introduction to collaboration
  2. 1:24Challenges of collaboration
  3. 2:38Using AnyCable with Rails
  4. 7:57Managing connections and history
  5. 10:36Understanding CRDTs with Yjs
  6. 14:05Convergence and data order
  7. 19:38Cursor awareness and whispers
  8. 21:57Scaling and persistence
  9. 23:20Implementation and conclusion
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.