Skip to content

vineethpawar/messenger-clone

Repository files navigation

Messenger Clone

🚧🚧🚧 under Development 🚧🚧🚧
This is a work-in-progress web application that aims to replicate the functionality of a popular messenger app. It provides real-time chat, user active status indicator, image/audio sharing, emoji picker, adding reactions with emojis in chat, creating groups, and managing group members.

The app is currently deployed on Vercel at https://messenger-clone-vineethpawar.vercel.app/.

Tech Stack

The application is built using the following technologies:

  • Next.js: Next.js is a React framework that provides server-side rendering, static site generation, and other performance optimizations.
  • TypeScript: TypeScript is used to add static typing to JavaScript, enhancing code quality and developer experience.
  • NativeBase: NativeBase is a UI component library that allows for the rapid development of cross-platform mobile apps and web applications using React Native.
  • PubNub: PubNub is a backend service that provides real-time messaging functionality, enabling instant messaging and presence detection.
  • Redux: Redux is used for state management, providing a predictable and centralized way to manage application state.

Features

Real-time Chat

The app offers real-time chat functionality, allowing users to send and receive messages instantly.

User Active Status Indicator

Users' active status is displayed, indicating whether they are currently online or offline.

Image/Audio Sharing

Users can share images and audio files with each other in the chat.

Emoji Picker

An emoji picker is available to easily insert emojis into chat messages.

Adding Reactions with Emojis

Users can react to messages by adding emojis as reactions.

Creating Groups

Users have the ability to create groups for group chats, enabling communication with multiple people simultaneously.

Viewing Members

Group members can be viewed, providing an overview of who is part of a particular group.

Adding and Removing Members

Group administrators have the ability to add or remove members from a group.

Development

To run the application locally, follow these steps:

  1. Clone the repository: git clone https://github.com/your-username/messenger-clone.git
  2. Install dependencies: cd messenger-clone && npm install
  3. Start the development server: npm run dev
  4. Open http://localhost:3000 in your browser.

Contributing

Contributions to this project are welcome. If you find any issues or have suggestions for improvements, please open an issue or submit a pull request on the GitHub repository.

License

This project is licensed under the MIT License.