Skip to content

A real-time chat application built with NestJS, MongoDB, and WebSockets. Leverage the power of NestJS for the server-side logic, MongoDB for data storage, and WebSockets for seamless, bi-directional communication.

Notifications You must be signed in to change notification settings

luthfiarifin/nestjs-chat-app

Repository files navigation

Nest Logo

A progressive Node.js framework for building efficient and scalable server-side applications.

NPM Version Package License NPM Downloads CircleCI Coverage Discord Backers on Open Collective Sponsors on Open Collective Support us

Overview

NestJS-MongoDB-Chat-App is a robust and scalable real-time chat application designed to provide a seamless communication experience. Leveraging the power of NestJS for server-side logic, MongoDB with Mongoose for efficient data storage and ORM, and WebSockets for instantaneous bi-directional communication, this application offers a feature-rich environment for users to engage in peer-to-peer conversations and participate in room-based discussions.

Features

  • User Authentication: Secure user authentication using Passport and JWT, ensuring a safe and personalized experience for each user.
  • Peer-to-Peer Messaging: Enjoy direct and private conversations with other users in real-time.
  • Room-Based Conversations: Join or create chat rooms to engage in group discussions on various topics.
  • WebSockets Integration: Harness the power of WebSockets for low-latency communication, providing a responsive and dynamic chat experience.
  • Mongoose ORM: Benefit from the elegant Mongoose ORM for MongoDB, simplifying data modeling and interaction with the database.
  • NestJS Command Seeding: Utilize NestJS Command for convenient seeding of initial data.

Technologies Used

  • NestJS: A progressive Node.js framework for building efficient and scalable server-side applications.
  • MongoDB: A NoSQL database for flexible and scalable data storage.
  • Mongoose: An elegant MongoDB object modeling tool for Node.js.
  • WebSockets: Facilitates real-time, bidirectional communication between clients and servers.
  • Socket.IO: A library for real-time web applications, enabling real-time, bi-directional communication.
  • Passport: Simple, unobtrusive authentication for Node.js.
  • JWT: JSON Web Tokens for secure authentication.
  • NestJS Command: Convenient command-line tools for NestJS applications.

Installation

$ npm install

Running the app

# development
$ npm run start

# watch mode
$ npm run start:dev

# production mode
$ npm run start:prod

Contributing

We welcome contributions! If you have ideas for new features, find bugs, or want to improve the documentation, feel free to open issues and pull requests.

About

A real-time chat application built with NestJS, MongoDB, and WebSockets. Leverage the power of NestJS for the server-side logic, MongoDB for data storage, and WebSockets for seamless, bi-directional communication.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published