Giter VIP home page Giter VIP logo

react-app-simple-chat-app's Introduction

react-app-simple-chat-app

A Simple Chat Application using React JS, a JavaScript library to make awesome UI by Facebook, Node JS, Express JS and MongoDB.

This application uses component oriented UI creation paradigm. All components are written in JSX and ES6 style and are combined to get a single build for production purpose using Webpack 5.

Babel is used to transpile all JSX code to vanilla JavaScript. For UI creation HTML5 and CSS3 are used.

This is a responsive web application for viewing in both Mobile and Desktop.

Back end is implemented using Node JS, Express JS and MongoDB Atlas. Real time communication is done using Socket.io

Features

  • Code is rewritten with latest version of React JS and Node JS.
  • Latest features of JavaScript i.e. ESNext is used.

  • This is Full Stack Simple Chat Application.
  • All the user details, rooms and conversations are stored in the MongoDB Atlas. This example uses a free/ shared account. So Please use it wisely.
  • Login as well as Logout feature is added.
  • Error will be shown if the credentials are not correct.
  • for simplicity passwords are not encrypted
  • Real time communication is supported using Socket.io.
  • Rooms with users are supported. Conversation of a specific rooms will be shown on clicking the corresponding room.
  • for mobile screen user can go to the rooms page by clicking the <- icon at the end of the screen.
  • Multiline message can be send by hitting Ctrl + ENTER.
  • To send a message hit ENTER key.
  • Online / Offline status are shown by the violet dot.
  • Read / Unread status of conversation is supported.
  • All the conversation are stored in the database i.e. persistant.
  • All the timestamps are shown in UTC format to taken into cross browser differences.

Installation

Clone the repository:

git clone https://github.com/anijitsao/react-app-simple-chat-app.git

Navigate inside the directory:

cd react-app-simple-chat-app

Install all the necessary dependecies

npm install

Now run the server:

npm run server

Login to chat


  1. Open 2 web browser and typehttp://localhost:3000 in the address bar to load the application in each of them.
  2. In one browser login with one Test users credentials.
  3. In another one login with another Test users credentials and enjoy chatting.

Test users

Username Password
anijit anijit123
jeetm jeetm76

tested with latest version of Google Chrome and Mozilla Firefox

Screenshots

Some screens of the application is given below for better understanding.

Desktop as well as Mobile version of the screenshots are given side by side.

Login Screen

Entering credentials

After submitting credentials

If credentials are not correct

After a successful login

When a new user joins

When a new user joins (2nd browser)

Sender type some message

Receiver's room is updated

Logout functionality

react-app-simple-chat-app's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

react-app-simple-chat-app's Issues

Credentials not working

None of the credentials given in ReadMe file for login are not working.
The given credentials were:

  1. username: anijit | password: anijit123
  2. username: jeetm | password: jeetm76

Add a license

Could you add a license? So we know what is allowed or not with the source code?

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.