All Projects → davehowson → chat-app

davehowson / chat-app

Licence: other
MERN Stack Based Chat Application

Programming Languages

javascript
184084 projects - #8 most used programming language
HTML
75241 projects

Projects that are alternatives of or similar to chat-app

AquilaCMS
AquilaCMS is an Open Source and "all in one" ecommerce solution, self hosted, built using nodejs (MERN stack)
Stars: ✭ 69 (-70.13%)
Mutual labels:  mern-stack
inCyberPunk2022
👾 https://cybersocial.herokuapp.com/   C̵̡̡͓̪̺̲̺̳̭̱̩͖͔̽̈́͜y̵̢̺̮̥̠̲̼̫͗b̴̲͇̟̭̹͆͒̈́̒͋̃̌̇̈̆̚͠͠ȅ̷̡̢̩̺̏r̴̢̛̹̲̜͙͉̩̩̣͉̺͂̀́̈́̇͛͋̊̉̈́̇P̵̡͊̚ų̵̙̣͓̤̼̭̤̥̯̻̯̒ͅň̸̛̯͕̦̦͓̙̋͐̈́́̉ͅḱ̷̡̪͚͉̟̘̳̯̳͉̈́͐͂̇̾͑̕̕͝ͅ
Stars: ✭ 28 (-87.88%)
Mutual labels:  mern-stack
MERN-Boilerplate
A simple Mern Boilerplate with auth
Stars: ✭ 112 (-51.52%)
Mutual labels:  mern-stack
Coding-Ninjas-Full-Stack-Web-Development
It contains all the files I created during the MERN full stack web development course with coding ninjas
Stars: ✭ 108 (-53.25%)
Mutual labels:  mern-stack
add-my-name
No more WhatsApp spams 🎉
Stars: ✭ 16 (-93.07%)
Mutual labels:  mern-stack
Awesome-Projects-Collection
This is a beginner-friendly repo to make a collection of some unique and awesome projects. Everyone in the community can benefit & get inspired by the amazing projects present over here.
Stars: ✭ 175 (-24.24%)
Mutual labels:  mern-stack
Netflix-Clone-MERN
A Netflix clone created with the MERN Stack
Stars: ✭ 37 (-83.98%)
Mutual labels:  mern-stack
mern-apollo-graphql-boilerplate
MERN + Apollo-Graphql Boilerplate
Stars: ✭ 21 (-90.91%)
Mutual labels:  mern-stack
node-casperjs-aws-lambda
Base scaffolding app for a casperjs/phantomjs app running on Amazon (AWS) Lambda
Stars: ✭ 52 (-77.49%)
Mutual labels:  mern-stack
mern-stack-crud
MERN stack (MongoDB, Express, React and Node.js) create read update and delete (CRUD) web application example
Stars: ✭ 142 (-38.53%)
Mutual labels:  mern-stack
dhan-gaadi
A complete online bus reservation system (Node, React, Mongo, NextJS, ReactNative)
Stars: ✭ 207 (-10.39%)
Mutual labels:  mern-stack
arc
Fullstack open source Invoicing application made with MongoDB, Express, React & Nodejs (MERN)
Stars: ✭ 1,291 (+458.87%)
Mutual labels:  mern-stack
react-app-simple-chat-app
A Simple Chat Application using MERN stack (MongoDB, Express JS, React JS, Node JS) and Socket.io for real time chatting
Stars: ✭ 41 (-82.25%)
Mutual labels:  mern-stack
amazin
A MERN-stack app for eCommerce platform, Webshop, Web Store. Storybook: https://www.amazin.one/ Alternative: https://ntrix.github.io/amazin-story
Stars: ✭ 27 (-88.31%)
Mutual labels:  mern-stack
Elemento
Elemento/ Customizable Portfolio is a website that aims to help people make a fully functional static website in a short amount of time without relying on web developers and that too with very little prior programming experience. This project was started under PSoC (PClub Summer of Code) .
Stars: ✭ 17 (-92.64%)
Mutual labels:  mern-stack
dot-connect
Recreation of a childhood game on mern-stack
Stars: ✭ 29 (-87.45%)
Mutual labels:  mern-stack
Trellis
A simplified Trello clone built with React, Redux, Node, Express and MongoDB.
Stars: ✭ 116 (-49.78%)
Mutual labels:  mern-stack
AmigoChat-Realtime-Chat-Application
AmigoChat is a responsive real-time chat application built on MERN Stack and Socket io.
Stars: ✭ 22 (-90.48%)
Mutual labels:  mern-stack
spaq
Template for quickly setting up an SPA
Stars: ✭ 45 (-80.52%)
Mutual labels:  mern-stack
Shopping-Cart-MERN
💸 Simple Online Shopping Cart made with the MERN Stack
Stars: ✭ 34 (-85.28%)
Mutual labels:  mern-stack

MERN: Full-stack Chat Application

Introduction

The MERN stack which consists of Mongo DB, Express.js, Node.js, and React.js is a popular stack for building full-stack web-based applications because of its simplicity and ease of use. In recent years, with the explosive popularity and the growing maturity of the JavaScript ecosystem, the MERN stack has been the goto stack for a large number of web applications. This stack is also highly popular among newcomers to the JS field because of how easy it is to get started with this stack.

This repo consists of a Chat Application built with the MERN stack. I built this sometime back when I was trying to learn the stack and I have left it here for anyone new to the stack so that they can use this repo as a guide.

This is a full-stack chat application that can be up and running with just a few steps. Its frontend is built with Material UI running on top of React. The backend is built with Express.js and Node.js. Real-time message broadcasting is developed using Socket.IO.

Features

This application provides users with the following features

  • Authentication using JWT Tokens
  • A Global Chat which can be used by anyone using the application to broadcast messages to everyone else.
  • A Private Chat functionality where users can chat with other users privately.
  • Real-time updates to the user list, conversation list, and conversation messages

Screenshots

Global Chat

Global Chat

Private Chat

Private Chat

Login

Login

Register

Register

How to use

You can have this application up and running with just a few steps because it has both the frontend and the backend in a single repository. Follow the steps below to do so.

  1. Clone this repo
  2. Once you have the repo, you need to install its dependencies. So using a terminal, move into the root directory of the project and execute npm install to install the dependencies of the Node.js server and then run npm run client-install to install the dependencies of the frontend. The second command is a custom command that I wrote to simplify the installation process.
  3. This application uses MongoDB as its Database. So make sure you have it installed. You can find detailed guides on how to do so here. Once installed, make sure that your local MongoDB server is not protected by any kind of authentication. If there is authentication involved, make sure you edit the mongoURI in the config/keys.js file.
  4. Finally, all you have to do is simply run npm run dev. If this command fails, try installing the package concurrently globally by running npm install -g concurrently and then running the dev command.
  5. The frontend of the application will be automatically opened in your web browser and you can test it away.

Things to note

Disclaimer

This repository contains beginner level code and might contain some things I wish to change or remove. I have not maintained this for quite some time, but now I am trying to slowly fix these issues. You are welcome to open issues if you find any and I will accept PR's as well.

Cheers 💻 🍺 🔥 🙌

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].