Skip to content

TeamsX Chat is an exciting full-stack application built with Next.js 13, Socket.io, Prisma, Tailwind CSS, and MySQL. This app provides real-time chat functionality to enable teams to collaborate efficiently. With a modern tech stack, Teams Chat ensures fast, scalable, and responsive communication for teams of all sizes.

License

Notifications You must be signed in to change notification settings

M-ayank2005/TeamsX

Repository files navigation

🚀 TeamX Chat

TeamX Chat is a full-featured real-time chat application built to enhance team collaboration. This full-stack project is developed using Next.js 13, Socket.io, Prisma, Tailwind CSS, and MySQL.

🌟 Features

  • 💬 Real-time messaging: Send and receive messages instantly using Socket.io.
  • 📎 Send attachments: Attach files to your messages using UploadThing.
  • ✏️ Edit and delete messages: Edit or delete messages in real-time for all participants.
  • 🎥 Audio/Video channels: Create and join text, audio, and video call channels.
  • 🗨️ 1:1 messaging: Direct conversations between team members.
  • 📹 1:1 video calls: Secure and real-time video calls between members.
  • 👥 Member management: Role management (Guest / Moderator), kicking members, and more.
  • 🔗 Invite system: Generate unique invite links and manage team invitations.
  • 🔄 Infinite message loading: Load older messages in batches of 10 using tanstack/query.
  • 🛠️ Server creation and customization: Personalize and create custom servers for teams.
  • 🎨 Beautiful UI: Fully responsive design with TailwindCSS and ShadcnUI.
  • 🌗 Light/Dark mode: Toggle between light and dark themes.
  • 🛡️ WebSocket fallback: Fallback to polling with alerts if WebSocket connection fails.
  • 🔍 ORM with Prisma: Efficient database queries using Prisma ORM.
  • 💾 MySQL Database: Powered by Planetscale's scalable MySQL instance.
  • 🔐 Authentication: Clerk provides secure user authentication and management.

🛠️ Tech Stack

  • Next.js 13: For server-side rendering and static generation.
  • Socket.io: For real-time WebSocket communication.
  • Prisma ORM: For interacting with the MySQL database.
  • TailwindCSS: For beautiful and responsive design.
  • MySQL: Database to store chat data and user info, hosted on PlanetScale.
  • Clerk: For user authentication and management.
  • UploadThing: For handling file attachments.
  • LiveKit: For real-time audio and video communication.

🤝 Contributing

We welcome contributions to improve this project. To contribute:

  1. Fork this repository.
  2. Create a new branch: git checkout -b feature/my-feature.
  3. Make your changes and commit: git commit -m 'Add some feature'.
  4. Push to the branch: git push origin feature/my-feature.
  5. Open a pull request.

For more information, feel free to create an issue or reach out!

About

TeamsX Chat is an exciting full-stack application built with Next.js 13, Socket.io, Prisma, Tailwind CSS, and MySQL. This app provides real-time chat functionality to enable teams to collaborate efficiently. With a modern tech stack, Teams Chat ensures fast, scalable, and responsive communication for teams of all sizes.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published