Skip to main content
Back to projects

Private Chat

Active

Built with

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

Set your heart upon your work, but never on its reward.

Bhagavad Gita