GithubHelp home page GithubHelp logo

katiyarkartik0 / chat-app Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 633 KB

A fully functional MERN chat application.

Home Page: https://hivechat.netlify.app/

JavaScript 80.33% HTML 1.54% CSS 18.13%
nodejs reactjs socket-io aws mongodb redux-toolkit css html chaijs mocha

chat-app's Introduction

Chat Application Features

Welcome to the Chat Application! This README.md file provides an overview of the features available in this project.

Table of Contents

Login and Signup

Feature: Users can create accounts and log in individually.

Description: This application provides a secure and user-friendly login/signup system. Users can create individual accounts with unique credentials to access the chat features.

One-on-One Real-Time Chat

Feature: Users can engage in real-time one-on-one chat.

Description: Users can initiate one-on-one conversations with other users who are registered on the platform. These chats are real-time, allowing for instant messaging and interaction.

Group Chat

Feature: Users can join existing group chats or create new ones.

Description: Users have the flexibility to either join existing group chats or create their own group chats for conversations with multiple participants. Group chats are ideal for discussions, collaborations, or shared interests.

Personal Chat Within Groups

Feature: Users can have personal one-on-one chats with group members.

Description: Within a group chat, users can initiate personal one-on-one conversations with other members of the group. This allows for private discussions alongside the group conversation.

Message Types

Feature: Users can send text messages and attachments (files).

Description: Users can send text messages as well as attachments, such as files, images, or documents, to other users or group chats. This feature enhances communication by allowing users to share various types of content.

Getting Started

To get started with the Chat Application, follow the installation and usage instructions provided in the project's documentation. Make sure to create an account or log in to access the features mentioned above.

Enjoy using the Chat Application and happy chatting!

Checkout README.md for backend implementation

Backend

Checkout README.md for frontend implementation

Frontend

chat-app's People

Contributors

katiyarkartik0 avatar

Watchers

 avatar

chat-app's Issues

FE: Side Drawer Component is heavily dependent on props for toggling and visibility

Improve Code Readability by Implementing Global State Management for SideDrawer Component

Description

The SideDrawer component currently heavily relies on props for toggling and visibility, which can make the code less tidy and harder to read. To enhance maintainability and readability, it would be beneficial to implement a global state management solution instead.

By introducing global state management, we can centralize the logic for toggling and managing the visibility of the SideDrawer component. This approach would not only simplify the implementation of the SideDrawer but also make it easier to understand and modify in the future.

Proposed Solution:

  • Implement a global state management solution such as Redux.
  • Create a dedicated slice or context for managing the visibility state of the SideDrawer.
  • Refactor the SideDrawer component to consume this global state instead of relying heavily on props.
  • Update relevant components to dispatch actions or update the global state to toggle the SideDrawer.

Benefits:

  • Improved code readability and maintainability.
  • Reduction in prop drilling and component coupling.
  • Centralized management of SideDrawer visibility logic.
  • Easier implementation of future features or enhancements related to the SideDrawer.

Additional Considerations:

  • Compatibility with existing codebase and architecture.

This enhancement would contribute to a cleaner and more maintainable codebase, enhancing the overall development experience.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.