![I built Fluxychat – realtime chat on Cloudflare Workers, Durable Objects and D1 [open beta]](https://external-preview.redd.it/qeifkwwr4C5QSg58B_96VUqdBQ2DqQxNVOT5ptzpTrU.png?width=1080&crop=smart&auto=webp&s=1bbc6ab048a617b0fb21e9550f1a864e0b91044f)
I built Fluxychat – realtime chat on Cloudflare Workers, Durable Objects and D1 [open beta]
Hi, over the past 2 months I built Fluxychat because I wanted a small, inspectable realtime chat stack on Cloudflare instead of running a separate socket fleet and paying a heavy SaaS bill for "just rooms + delivery + ops hooks."
The stack:
- Cloudflare Worker handles HTTP + WebSocket
- One Durable Object per room for room state and delivery
- D1 for messages, metadata, quotas
- Next.js operator console on Vercel
- u/fluxy-chat/sdk -> FluxyChatClient, useChat, FluxyRealtimeProvider
What's live in open beta:
- Multi-tenant rooms over WebSocket
- JWTs scoped by tenant/project
- Agents with tool calls streamed in the room timeline
- Console for projects, rooms, agents, billing, webhooks
- MIT licensed and fully self-hostable on your own Cloudflare account
Demo video: Build Real Time Chat With Fluxychat
Try it: Create free account
Repo: https://github.com/AlessandroFare/fluxychat
I'd especially love feedback on:
The DO layout, one DO per room, is that the approach you'd take?
Whether signup friction is acceptable or I should ship a no-login demo room first
What would make you try the hosted version vs self-host?
Happy to go deep on the Durable Objects implementation in the comments.