Skip to content

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

Notifications You must be signed in to change notification settings

k4u5h4L/Chatterz

Repository files navigation

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.

About

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

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published