NOTE: PULL REQUESTS ONLY FROM THE STUDENTS OF IIEST, SHIBPUR WILL BE ACCEPTED, IF YOU ARE NOT A STUDENT OF IIESTS, KINDLY IGNORE THIS REPOSITORY
This is a real-time chat application where users can create accounts, sign in, create rooms, and chat with others. The app leverages cutting-edge technologies like PusherJS for real-time communication and Next.js for server-side rendering.
Live Preview:
https://am-chatapp.netlify.app
-
Account Creation & Authentication:
Users can create accounts and sign in using Next Auth with Google OAuth for easy authentication. -
Room Creation & Joining:
Users can create and join chat rooms where they can communicate with others in real-time. -
Ephemeral Chats:
No chat history is stored in the database. Once the user leaves the room, the room is deleted. -
Real-time Communication:
Messages are delivered instantly to all users in a room via PusherJS, providing a seamless chat experience.
- Next.js
- TailwindCSS
- Prisma: For easy interaction with the MongoDB database, simplifying database management.
- MongoDB: For storing user accounts, room data, and related information (except chat messages).
- PusherJS: For real-time communication, enabling instant message delivery to all users in a room.
git clone https://github.com/yourusername/am-chatapp.git
cd chat-app
npm install
GOOGLE_AUTH_CLIENTID = google auth client id
GOOGLE_AUTH_CLIENTSECRET = google auth client secret
MONGODB_URL = mongodb url
NEXT_PUBLIC_PUSHER_APP_KEY = pusher app key
NEXTAUTH_SECRET = next auth secret
NEXTAUTH_URL = http://localhost:3000
PUSHER_APP_ID = pusher app id
PUSHER_SECRET = pusher secret
npm run dev
We encourage developers of all skill levels to contribute to this project. Here's how you can get started:
Checkout CONTRIBUTING.md for contribution guidelines.
Thank you for taking the time to contribute! Every contribution, no matter how small, helps improve this project. If you have any questions, feel free to open a new issue or reach out to the maintainers.