Skip to content

DylanPina/SocketChat

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

140 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

⚡Socket Chat ⚡

Socket chat is a web-based encrypted messaging platform that uses web sockets for bidirectional and low-latency communication

Features

  • Real-time encrypted messaging using web sockets
  • One-on-one messaging
  • Group messaging
  • Create your own profile
  • Add friends
  • Realtime notifications
  • Mute users / groupchats
  • Mobile friendly

Upcoming features

  • Sending photos
  • Sending videos
  • Online / offline / away / do not disturb status
  • Google sign in with OAuth

Tech stack

  • [ReactJS] - Free and open-source front-end JavaScript library developed by Facebook for building user interfaces based on UI components.
  • [Typescript] - Strongly typed programming language that builds on JavaScript, giving you better tooling at any scale. Adds additional syntax to JavaScript to support a tighter integration with your editor. Catch errors early in your editor.
  • [MongoDB] - Cross-platform document oriented NoSQL database which uses JSON-like documents with optional schemas.
  • [Mongoose] - Node.js-based Object Data Modeling (ODM) library for MongoDB, offers a variety of hooks, model validation, and other features aimed at making it easier to work with MongoDB.
  • [Express] - Minimal and flexible Node.js web application framework that provides a robust set of features for web and mobile applications.
  • [Node.js] - Back-end JavaScript runtime environment that runs on a JavaScript Engine and executes JavaScript code outside a web browser, which was designed to build scalable network applications.
  • [Socket.io] - Library that enables low-latency, bidirectional and event-based communication between a client and a server.
  • [JSON Web Tokens] - Proposed internet standard for creating data with optional signature and/or optional encryption whose payload holds JSON that asserts some number of claims.
  • [Redux]- JavaScript library for managing and centralizing application state.
  • [CSS] - Style sheet language used for describing the presentation of a document written in a markup language such as HTML or XML.
  • [Postman] - API platform for developers to design, build, test, and iterate their APIs.

Run Locally

Installing dependencies:

npm i

Starting client:

npm run client

Starting server

npm run server

Demo

Login:

Signup:

Signed in:

One to one chats:

Groupchats:

Create a groupchat:

Chat notifications:

Search for users:

View your profile

View other user's profile

Add friends

Mute users

Mobile responsive

About

MERN stack chat client utilizing web sockets

Resources

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages