Skip to content

ChatApp is a MERN Socket.io application enabling real-time messaging with MongoDB, React, Express.js, and Node.js. It features authentication and sleek design.

Notifications You must be signed in to change notification settings

Youssef-kobi/ChatApp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation


MERN
Chat Application

A MERN Socket.io Chat app.

npm version

IntroductionKey FeaturesHow To UseLicense

Introduction

This project is a MERN Chat Application. The technologies used are as follows:

  • MongoDB as a NoSQL database
  • React for the front-end, bootstrapped with "Create React App".
  • Express.js for the server
    • Serves the React app
    • Provides the JSON API for the React app using http
  • Node.js for the back-end
  • Socket.io for real-time, bi-directional communication between web clients and servers.

Key Features

Files Structure

  • MERN structured folders
  • TailwindCSS
  • ES7 Airbnb eslint / prettier
  • Axios for API fetching
  • Socket.io for instant messaging
  • Jwt auth for socket connections
  • React-toastify for Toast notification
  • React-hook-form for form management
  • Yup (frontend & backend)for Forms validation
  • @hookform/resolvers to use yup with react-hook-form
  • React-router-dom V6, route restrictions: PrivateOutlet & PublicOutlet
  • Dark/Light mode
  • emoji-mart for chat Emojis
  • Pages: Login, Registration, ForgetPassword, NotFound, Dashboard,
  • Authentication using JWT with verification middleman in the serve routes
  • React Context for Authentication and Socket

TO-DO

  • Responsiveness 30%
  • Mailing service for user account verification & reset password
  • Google / Facebook / Twitter Authentication

How To Use

To clone and run this application, you'll need Git and Node.js (which comes with npm) installed on your computer. From your command line:

# Clone this repository
$ git clone https://github.com/amitmerchant1990/electron-markdownify

# Go into the repository
$ cd electron-markdownify

# Install dependencies
$ npm install

# Run the app
$ npm start

Note If you're using Linux Bash for Windows, see this guide or use node from the command prompt.

License

MIT

About

ChatApp is a MERN Socket.io application enabling real-time messaging with MongoDB, React, Express.js, and Node.js. It features authentication and sleek design.

Topics

Resources

Stars

Watchers

Forks