Skip to content

This Next.js-based Discord Clone replicates key features of Discord, providing real-time messaging, voice channels, and seamless user interaction with a modern web experience.

License

Notifications You must be signed in to change notification settings

QuocAnh189/Discord_Clone

Repository files navigation

Discord Clone

===========================================================

Database :

iamgedemo

Features :

  • Real-time messaging using Socket.io
  • Send attachments as messages using UploadThing
  • Delete & Edit messages in real time for all users
  • Create Text, Audio and Video call Channels
  • 1:1 conversation between members
  • 1:1 video calls between members
  • Member management (Kick, Role change Guest / Moderator)
  • Unique invite link generation & full working invite system
  • Infinite loading for messages in batches of 10 (tanstack/query)
  • Server creation and customization
  • Beautiful UI using TailwindCSS and ShadcnUI
  • Full responsivity and mobile UI
  • Light / Dark mode
  • Websocket fallback: Polling with alerts
  • ORM using Prisma
  • MySQL database using Planetscale
  • Authentication with Clerk

1. How to run the app (Development Environment)

  1. Clone the repo and cd into it
  2. Run npm i local dev environment
  3. Setup Prisma with npx prisma generate and npx prisma db push
  4. Rename or copy .env.example file to .env
  5. Run npm run dev to visit localhost:3000 in your browser

App demo :

AppDemo

Screen :

iamgedemo

Read the documentation

Read the documentation of next.js. Read the documentation of react

Author Contact

Contact me with any questions!

Email: anquoc18092003@gmail.com Facebook: https://www.facebook.com/tranphuocanhquoc2003

Thank You so much for your time !!!

About

This Next.js-based Discord Clone replicates key features of Discord, providing real-time messaging, voice channels, and seamless user interaction with a modern web experience.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages