Logux, a new approach to client-server communication
summary
Logux claims to replace AJAX with a synchronized action log combining Redux and CRDT ideas, delivering real-time updates and offline editing by syncing client and server action logs over WebSocket and storing events in IndexedDB. The demo shows a small ~20KB Redux-compatible library, a companion server, optimistic UI behavior with undo from server, and a leader tab election to keep one socket per browser. Implementation is young but deployed internally and handles time skew, pings, and restore of unsent actions.
AI-written summary Β· about
chapters (50)
- 0:00Intro
- 0:39Evil Martians front-end open source
- 1:18Revenge from Autoprefixer
- 1:47Rework is dead
- 2:05Open source advice
- 2:54Front-end architecture ...
- 3:23AJAX Requests
- 4:18Server synchronization code
- 5:09Local connection in development
- 7:57CRDT, 2009
- 8:51Log must be a first-class citizen
- 9:15Actions log on client
- 9:28Actions log on server
- 10:21Problems and Solutions
- 10:39order of actions
- 10:49Sort by time?
- 11:30Questions about time: 2
- 11:54CloudFlare leap second problem
- 12:13Questions about time: 3
- 12:31Wrong time zone
- 13:00action ID
- 13:11Sequence number
- 13:22Server sends current time
- 13:33Client calculates time difference
- 13:43Client applies time difference
- 13:53Chinese Internet
- 14:18disconnect detection
- 14:43ping command
- 14:53Live connection status
- 15:23tabs conflict
- 15:40only the leader tab keeps WS
- 16:08Synchronized state between tabs
- 16:27Modern front-end
- 16:48Other problems of distributed systems
- 17:21Client: Redux compatible API
- 18:03Client: cross-tab actions
- 18:17Client: server actions
- 19:11Client: server could undo action on error
- 20:02Client: action storage
- 20:24Client: ask server for changes
- 20:35Client: wait for server answer
- 20:49Server: Node.js framework
- 21:03Server: actions handling
- 21:32Server: send actions to client at any time
- 22:14Wrap legacy back-end (PHP, Ruby)
- 23:13Trade-offs
- 23:25Problem 1: Complexity
- 24:02Problem 2: under construction
- 24:2530 contributors
- 25:28Questions?








