Skip to content

rpgehlot/MessengerApp

Repository files navigation

Protocol - A Messenger App

A modern, feature-rich messenger application built for seamless real-time communication. Connect with friends, see who's online, and never miss a message with our offline queuing system. Built with React and TypeScript for a robust and type-safe frontend, leveraging Next.js for server-side rendering, styled with TailwindCSS, and powered by Supabase for authentication and real-time database.

License: MIT React TypeScript Next.js TailwindCSS Supabase

Live Demo

Experience the app in action: Messenger App Demo

Messenger App Screenshot

Features

  • 📖 Read Receipts: Know exactly when your messages have been seen.
  • 📬 Unread Messages: Easily keep track of conversations you haven't checked yet.
  • 🔐 Secure Authentication: Sign in with email verification or Google OAuth.
  • 🟢 Online Status: See who's online and ready to chat.
  • ⌨️ Real-Time Typing Status: See when other users are typing for a more interactive chat experience.
  • Offline Messaging: Messages are queued and delivered when you're back online.
  • 🔍 User Search: Find friends quickly using unique usernames.
  • 👥 Group Chat: Chat with group of people

Why Messenger App?

In a world where communication is key, Messenger App stands out by offering:

  • Reliability: With offline messaging, you never miss important conversations.
  • Security: Robust authentication ensures your chats are private.
  • Usability: A clean, intuitive interface makes chatting a breeze.
  • Innovation: Stay tuned for cutting-edge features like group chats with media support.
  • Type Safety: Built with TypeScript for enhanced developer experience and fewer runtime errors.

Getting Started

To run the app locally:

  1. Clone the repository:

    git clone https://github.com/rpgehlot/MessengerApp.git
    
  2. Install dependencies:

    npm install
    # or
    pnpm install
    
  3. Set up environment variables (see .env.example for required variables).

  4. Run the development server:

    npm run dev
    # or
    pnpm dev
  5. Open http://localhost:3000 in your browser to see the result.

Technologies Used

  • React React: A JavaScript library for building user interfaces.
  • TypeScript TypeScript: A typed superset of JavaScript that compiles to plain JavaScript, ensuring type safety and maintainability.
  • Next.js Next.js: A React framework for building fast, SEO-friendly applications.
  • TailwindCSS TailwindCSS: A utility-first CSS framework for rapid UI development.
  • Supabase Supabase: An open-source Firebase alternative for authentication and real-time database.

Future Plans

We're constantly working to improve the Messenger App. Upcoming features include:

  • Support for media sharing (photos, videos, etc.)
  • Enhanced notification system.
  • Customizable user profiles.

Contributing

We welcome contributions from the community! If you'd like to contribute, please:

  • Fork the repository.
  • Create a new branch for your feature or bugfix.
  • Submit a pull request with a clear description of your changes.

License

This project is licensed under the MIT License. See the LICENSE file for details

About

A minimalist messenger app for communication

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages