Subway
Throughout college, my friends and I lived on IRC. It was our group chat before group chat existed—always-on conversations that picked up wherever you left off. The problem was the clients. Desktop apps felt clunky, and switching machines meant losing your scroll position, your unread counts, everything.
This was 2012, and I'd just discovered
Over two years of sporadic hacking, Subway grew into something real: persistent message history across browser sessions, a plugin system for extending functionality, desktop notifications, and smart rendering that could handle high-traffic channels without choking the browser.
Looking back, many of these patterns became standard in modern chat applications. At the time, they felt like experiments at the edge of what web apps could do.
Details
Session Replay
Watch Subway's socket negotiation, topic updates, and plugin actions in real time.
Tap through the reconstructed client to see how Subway handled socket negotiation, plugin actions, notifications, and connection drops—exactly as the original Node.js + Socket.io stack behaved.