Ghostalk

Welcome to GhostTalk, a real-time chat application built using React, Node.js, and Socket.Io. GhostTalk allows users to have anonymous conversations in real-time. With the latest enhancements, users can seamlessly connect and chat with others who are connected to the same Wi-Fi network. Additionally, users can send not only text messages but also emojis to make their conversations more expressive and fun. Whether you're across the room or just a few steps away, GhostTalk brings real-time conversations to your local network, making communication easy and enjoyable. Also, you can open the app on you phone too!!!

Table of Contents

  • Getting Started
  • Prerequisites
  • Installation
  • Usage
  • Features
  • Technologies Used
  • Contributing

To get started with GhostTalk locally on your machine, follow the instructions below.

Prerequisite

Make sure you have the following software installed on your system:

  • Node.js
  • npm

Installation

  • on client - npm i socket.io-client mongoose react-icons reaact-client emoji-picker-react node-emoji react-easy-emoji
  • on server - npm i express cors nodemon socket.io mongoose

Usage

To run GhostTalk on your local development environment, follow these steps:

Start the Node.js server:

  • cd serverbackend -> npm start Start the React client:
  • cd clientfrontend -> npm start

Features

GhostTalk offers the following features:

  • Real-Time Messaging: Users can send and receive messages in real-time, enabling instant communication.

  • Dark and Light Mode : Users can switch to dark and light modes for a comfortable viewing experience.

  • Emoji Support: Users can send emojis to express emotions and add fun to their interactions.

Technologies Used

GhostTalk is built using the following technologies:

Frontend:

  • React

Backend:

  • Node.js
  • Express.js
  • Socket.Io

Database:

  • MongoDB

Deployment:

  • Ongoing

Contributing

  • Abhishek Sood
  • Rohan Malik
  • Sahil Kumar

If you find any issues or want to request new features, you can do so by opening a GitHub issue.