Skip to content

Latest commit

 

History

History
128 lines (75 loc) · 3.11 KB

README.md

File metadata and controls

128 lines (75 loc) · 3.11 KB

🚀 ChatBreeze

Welcome to ChatBreeze, a full-stack real-time chat application built with modern web technologies. This app supports multiple users, private and group messaging, and is designed to be scalable and maintainable. 💬✨

📜 Table of Contents

🌟 Features

  • Real-time Messaging 🔥
  • User Authentication and Authorization 🔐
  • Two-Step Verification 🔄
  • Profile Management 📝
  • Message Notifications 🔔

🛠️ Technologies Used

⚙️ Environment Variables

To configure the application, set up the following environment variables:

🔹 Frontend (Website)

Create a .env file in the apps/website directory with:

NEXT_PUBLIC_API_ENDPOINT=http://localhost:8080

🔹 Backend (Server)

Create a .env file in the root directory with:

PORT=8080

DATABASE_URL=mongodb+srv://:@/chatbreeze?

AUTH_EMAIL= <your_email>

AUTH_EMAIL_PASS= <your_auth_email_password>

Replace , <db_password>, , <your_email>, and <your_auth_email_password> with your actual credentials.

💻 Run Locally

Prerequisites

Ensure you have the following installed:

  • Node.js (>=18.x) 🟢
  • MongoDB 🍃
  • Git 🔗

Clone the Repository

git clone https://github.com/Thund3rHawk/ChatBreeze.git

cd ChatBreeze

Install and Run the Backend

npm install

npx prisma generate

npm run dev

Install and Run the Frontend

Open another terminal:

cd apps/website

npm install

npm run dev

The frontend should now be running at http://localhost:3000.

🚀 Usage

  • Sign Up or Log In: New users can sign up and verify their email using an OTP. Existing users can log in with their credentials.
  • Create or Join Chats: Start a chat by searching for a user by their email.
  • Send Messages: Type and send messages in real-time. Receive notifications for new messages.

🤝 Contributing

Contributions are always welcome! Please refer to the CONTRIBUTING.md file for guidelines on how to contribute. 🚀

📜 License

This project is licensed under the MIT License. See the LICENSE file for more details. 📄