This is a simple chat application built using the MERN stack (MongoDB, Express.js, React.js, Node.js) without Redux, but utilizing Mongoose for MongoDB interactions and Socket.io for real-time communication.
- Real-time messaging: Instantly send and receive messages.
- User authentication: Register and login to access the chat functionality.
- Persistent storage: Messages are stored in a MongoDB database for future reference.
- MongoDB: A NoSQL database used for storing chat messages and user information.
- Express.js: A Node.js framework used for building the backend API.
- React.js: A JavaScript library used for building the frontend user interface.
- Node.js: A JavaScript runtime environment used for running the server-side code.
- Socket.io: A library that enables real-time, bidirectional, and event-based communication between web clients and servers.
- Mongoose: A MongoDB object modeling tool designed to work in an asynchronous environment.
-
Clone this repository to your local machine:
git clone https://github.com/be3tle/buzztalk-client.git
-
Navigate to the project directory:
cd buzztalk-client -
Install server dependencies:
npm install
-
Install client dependencies:
npm install
-
Set up your MongoDB database:
-
Create a MongoDB Atlas account or install MongoDB locally.
-
Create a
.envfile in the root directory and add your MongoDB connection string:MONGODB_URI=your_mongodb_connection_string
-
-
Start the development server:
npm run dev
-
Open your browser and navigate to
http://localhost:5731to view the app.
- Register for a new account or log in with existing credentials.
- Start chatting with other users in real-time.
- Messages will be persisted in the database for future reference.
Contributions are welcome! Please feel free to submit a pull request or open an issue for any bugs or feature requests.
This project is licensed under the MIT License - see the LICENSE file for details.