
netstack.fm socketioxide with Théodore Prévot
Feb 24, 2026
Théodore Prévot, creator of socketioxide and Rust systems engineer, built a Socket.IO server in Rust while working on a synced writing app. He walks through Engine.IO vs Socket.IO, rooms, namespaces, reconnection and scaling with adapters. He also tackles a tricky lazy Serde JSON deserializer for mixed JSON and binary payloads and discusses runtime and testing trade-offs.
AI Snips
Chapters
Transcript
Episode notes
Rewriting A Writer App Sparked Socketioxide
- Théodore started socketioxide to migrate a collaborative writer app backend to Rust and learned Rust by rewriting the server.
- He didn't finish the app but the Socket.IO server project grew, attracted contributors, and became widely reused.
Learn Rust By Studying Tokio Axum And Hyper
- Learn by reading production Rust codebases; Théodore read Tokio, Axum and Hyper to learn idiomatic patterns and to guide his refactors.
- Use Rust's type system to refactor confidently and discover better architectures over time.
Engine.IO Is A Transport Abstraction With History
- Engine.IO is a thin abstraction over transports that primarily exists to support long polling and provide a socket abstraction.
- Socket.IO evolved from a polyfill for browsers into a high-level runtime with rooms, namespaces, recovery, and scaling features.
