Skip to content

Chatterly: A high-performance Socket.io-powered real-time messaging platform with JWT-secured microservices architecture, React/Zustand reactivity, MongoDB persistence layer, and TailwindCSS/DaisyUI theming—delivering blazing-fast WebSocket communication with zero compromise on security.

Notifications You must be signed in to change notification settings

rmnask2/Chatterly-JWT-Secured-Realtime-Communication-Engine

Repository files navigation

Chatterly: JWT-Secured Realtime Communication Engine 🚀

Chatterly

Welcome to the Chatterly repository! This project is a high-performance messaging platform designed for real-time communication. Built with modern technologies, it ensures secure and efficient message delivery.

Table of Contents

Features 🌟

  • Real-time Messaging: Enjoy seamless communication with WebSocket support via Socket.io.
  • JWT Authentication: Secure your messages with JSON Web Tokens.
  • Microservices Architecture: Modular design for easy scaling and maintenance.
  • React/Zustand: Efficient state management for responsive user interfaces.
  • MongoDB Persistence: Reliable data storage for messages and user information.
  • TailwindCSS & DaisyUI: Beautiful, responsive design for a modern look.
  • Toast Notifications: Instant feedback for user actions.
  • Cloudinary Integration: Easily manage media uploads.

Technologies Used 🛠️

  • Frontend: React.js, Zustand, TailwindCSS, DaisyUI
  • Backend: Node.js, Express.js, Socket.io
  • Database: MongoDB
  • Authentication: JWT
  • Hosting: Cloudinary for media, various cloud services for deployment

Installation ⚙️

To get started with Chatterly, follow these steps:

  1. Clone the Repository:

    git clone https://github.com/rmnask2/Chatterly-JWT-Secured-Realtime-Communication-Engine.git
    cd Chatterly-JWT-Secured-Realtime-Communication-Engine
  2. Install Dependencies: For the server:

    cd server
    npm install

    For the client:

    cd client
    npm install
  3. Set Up Environment Variables: Create a .env file in the server directory and add your environment variables. Here’s a sample:

    MONGODB_URI=your_mongodb_uri
    JWT_SECRET=your_jwt_secret
    CLOUDINARY_URL=your_cloudinary_url
    
  4. Run the Application: Start the server:

    cd server
    npm start

    Start the client:

    cd client
    npm start

Usage 📦

Once the application is running, you can access it in your browser at http://localhost:3000.

Features in Action

  • Login: Use JWT for authentication. On successful login, you will receive a token that you can use for subsequent requests.
  • Messaging: Send and receive messages in real-time. The interface will update without needing to refresh the page.
  • Notifications: Receive toast notifications for new messages or actions.

Contributing 🤝

We welcome contributions! If you would like to contribute to Chatterly, please follow these steps:

  1. Fork the repository.
  2. Create a new branch for your feature:
    git checkout -b feature/YourFeatureName
  3. Make your changes and commit them:
    git commit -m "Add your message here"
  4. Push to your branch:
    git push origin feature/YourFeatureName
  5. Open a pull request.

Please ensure your code follows our coding standards and includes tests where applicable.

License 📄

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

Releases 📦

For the latest releases, visit our Releases section. Here, you can download the latest version and check for updates.

Release Button

Contact 📬

For any inquiries, please contact the project maintainer at rmnask2@example.com.


Thank you for checking out Chatterly! We hope you enjoy using this real-time communication engine as much as we enjoyed building it. Happy coding!

About

Chatterly: A high-performance Socket.io-powered real-time messaging platform with JWT-secured microservices architecture, React/Zustand reactivity, MongoDB persistence layer, and TailwindCSS/DaisyUI theming—delivering blazing-fast WebSocket communication with zero compromise on security.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •  

Languages