Private Chat
Overview
Private Chat is a real-time messaging app built around one idea: conversations that disappear. Users create temporary chat rooms that automatically self-destruct after 10 minutes, along with all messages. Nothing is stored permanently — once the room expires, it's gone.
What Users Can Do
- Create a private room — Set a username, choose a capacity (1–20 users), and get a unique room link
- Share the link — Send it to anyone you want to chat with
- Chat in real-time — Messages are delivered instantly via pub/sub
- Customize the look — Switch between dark/light mode and pick a custom theme color
- Destroy a room manually — Don't want to wait 10 minutes? Delete it immediately
- Know it's temporary — Rooms and all messages auto-delete after 10 minutes with no permanent storage
Why I Built This
Sometimes you just need a quick, private conversation — sharing a password, coordinating something in the moment, or having a discussion you don't want lingering in a chat history forever. Most messaging apps are designed around persistence. I wanted the opposite: a chat that's intentionally ephemeral, with zero sign-up friction and no data left behind.
This project was also a chance to explore Next.js 16, Elysia.js, and Upstash Realtime for real-time pub/sub messaging in a serverless environment.
Tech Stack
- Next.js 16, React 19, TypeScript
- Elysia.js (API backend)
- Upstash Redis + Realtime (data & pub/sub)
- Eden Treaty (type-safe API client)
- TanStack Query
- React Hook Form + Zod
- Tailwind CSS 4, shadcn/ui