Skip to content

Latest commit

 

History

History
100 lines (62 loc) · 2.87 KB

README.md

File metadata and controls

100 lines (62 loc) · 2.87 KB

Chatterz


📨 A JAM stack PWA, real-time messaging web app built with GraphQL, Nexus schema, Apollo, React, TypeScript, Next.js, JWT and MongoDB. 📬


built with love js Badge k4u5h4L GitHub badge machine Badge not bug but feature spaghetti Badge


chatterz


Technologies used:

  • React as the UI library.

  • Next.js as the React framework for auth and stuff.

  • GraphQL as the API language.

  • Socket.io for real time communication

  • MongoDB, and Mongoose as the ODM.

  • NextAuth as the authentication backend with passwordless logins.

Features:

  • Real time one-to-one messaging

  • Messages sync: saves and let's you chat using any device!

  • Automatic real-time sentiment recognition of the messages of the other person

  • Integrated calendar inside the messaging app

  • Integrated notes saving in the chats

  • Integrated to-do list in the chats

  • On-to-one or group Video calling

  • Group chats

  • End-to-end encryption

Prerequisites:

  • Node.js and yarn installed.

  • MongoDB installed and the daemon running at localhost:27017.

To run:

  • Clone and cd into the repo.
git clone https://github.com/k4u5h4L/Chatterz.git && cd Chatterz
  • Install the dependencies
yarn install
  • Create a new file called .env.local and fill in variables and keys from different providers from the .env.example file.

  • Run the development server for the Express backend server by running these two commands in separate terminals.

# this will compile the server TS code and will watch for file changes
yarn run watch

# This will spin up the development server using the nodemon utility
yarn run dev:server
  • Now with all the API keys and the backend server running, run development server for the client.
yarn dev

Note:

  • This project is for learning purposes only.