Skip to main content

Command Palette

Search for a command to run...

Discord Clone

Discord Clone | Real-time chat, voice & video — Next.js, Socket.io, LiveKit, Clerk, Prisma

Discord Clone

Discord Clone is a full-featured real-time app for text, audio, and video—modeled on Discord’s core flows—built with Next.js, Socket.io, and LiveKit, with Clerk authentication (including Google), Prisma for data, and UploadThing for attachments. Details follow the project README.

Live demo: discord-clone.vercel.app.

Discord Clone — desktop UI mockup
Discord Clone — desktop UI mockup
Discord Clone — mobile UI mockup
Discord Clone — mobile UI mockup

Main features

  • 🔒 AuthClerk with Google sign-in
  • 🎉 Servers — Server creation and customization
  • 📱 MessagingSocket.io real-time chat; websocket fallback with polling + alerts
  • 🚀 ChannelsText, audio, and video channels
  • 📨 Conversations — DMs between members
  • 🎬 Video & audio calls — Via LiveKit
  • 🎁 AttachmentsUploadThing for file messages
  • 🧨 Messages — Edit & delete in real time for all clients
  • 🔰 Members — Kick, roles (Guest / Moderator)
  • 🔗 Invites — Unique invite links and full invite flow
  • ⛓ Message feedInfinite loading in batches of 10 (TanStack Query)
  • 🔍 Command palette — Search / command-line style UX
  • 🎨 Theme — Light / dark
  • 🚀 SEO & performance — Meta tags, Next/Image, sitemaps
  • 🎊 Responsive layout
  • Next.js — App Router, SEO-oriented setup
  • TypeScript — Full-stack typing
  • Tailwind CSS + shadcn/ui — UI system
  • Clerk — Auth (including Google)
  • Prisma — Database layer
  • Socket.io — Real-time messaging and rooms
  • LiveKit — Audio/video
  • TanStack Query — Server state & infinite message lists
  • Zustand — Client UI state
  • React Hook Form + Zod — Forms and validation
  • UploadThing — File uploads in chat
  • Combined WebSockets, presence-style UX, and media (LiveKit) in one product surface
  • Used batched infinite scroll for messages with TanStack Query instead of loading entire histories
  • Kept auth (Clerk) and data (Prisma) aligned with protected routes and real-time fan-out

Like what you see?

I build custom web apps, mobile apps, and SaaS products. Message me on WhatsApp and let's discuss your next project.

Chat on WhatsApp

Related projects