Channels and real-time messages are a well-documented WebSocket pattern — the actual chat loop is genuinely buildable. What you'd be giving up is the app ecosystem your team already relies on.
Borderline
Effort: a weekendRunning cost: $5–$10/mo
Why CanICodeThis says Borderline
Channels, messages, and threaded replies map to a clean schema plus WebSockets for real-time delivery
File sharing and emoji reactions are small additions on top of a working message pipeline
For a small team's text-only chat, this is genuinely a weekend, not a platform
The parts that'll cause problems
Every integration your team currently relies on (calendar bots, CI notifications, ticketing) doesn't come with a custom build
Reliable message delivery across flaky mobile connections needs real engineering care, not just an open WebSocket
Voice or video calls layer real-time media infrastructure on top — a different, harder problem than text
How I'd build this
frontend
Next.js
database
Supabase (with Realtime)
auth
Supabase Auth
hosting
Vercel / Cloudflare Pages
MVP scope
Channels with real-time text messages
Threaded replies and emoji reactions
File attachments
Simple invite-link based membership
Postpone to v2
Third-party integrations (bots, webhooks)
Voice or video calls
Message search across full history
Mobile push notifications
What it actually costs to build
AI agent — with a subscription (Claude Pro/Max, Cursor, etc.)
$0 marginal
AI agent — pay-per-use API, no subscription
$43–$86 one-time
Hosting, once it's running
$5–$10/mo
Domain name, if you want your own
~$12/yr
Existing tools solving a similar problem typically run $8.75–$9.99/mo — see how they compare below.
The build prompt
Build me a small-team chat app, genuinely achievable in a weekend:
1. Channels with real-time text messages over WebSockets.
2. Threaded replies and emoji reactions — small additions on top of a working message pipeline.
3. File attachments, stored in object storage with a reference in the message table.
4. Simple invite-link based membership — no complex org-admin tooling needed.
Message history stored in Postgres. That's a real, complete team chat tool. Out of scope entirely for v1: voice or video calls, which need real-time video infrastructure, a much bigger add-on than text, and third-party integrations (bots, webhooks), representing real, ongoing platform investment.