Skip to content

VI Messenger is a feature rich chat application meticulously crafted from the ground up, utilizing modern technologies to deliver a seamless user experience. Built with React, Typescript, Tailwind CSS, Zustand, Socket.io, Express JS, Node JS, and MongoDB.

Notifications You must be signed in to change notification settings

Varadarajan-M/vi-messenger

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

69 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

VI Messenger

VI Messenger is a feature rich chat application meticulously crafted from the ground up, utilizing modern technologies to deliver a seamless user experience. Built with React, Typescript, Tailwind CSS, Zustand, Socket.io, Express JS, Node JS, and MongoDB.

Live URL

Experience VI Messenger live at https://vi-messenger.onrender.com/

Technical Analysis

For an in-depth technical analysis, check out the LinkedIn post here

Pre-requisites

  1. Node JS v18 or above.
  2. MongoDB - Database can either be configured locally or any cloud instance URL can be passed to .env file.

How to run locally

  1. Clone this repository using git clone.
  2. Navigate to the project directory.
  3. Run npm i to install dependencies.
  4. Start the server with npm run dev -w apps/server (using npm workspaces).
  5. Start the client with npm run dev -w apps\web.
  6. Access the application at http://localhost:3000.

What's new in v2?

  • AI Chat - Generates rich text responses with LLAMA-3 and streams it, supports code highlighting, copying etc...
  • Progressive Web Application(PWA) capabilites.
  • Message replies.
  • In addition to image/video sharing, added file sharing capabilities - Supported formats - pdf, mp3, docx, xlsx, pptx, txt, zip.
  • Media Previews in full screen.
  • Filter chats

Key Features - v1

  • Personal chats.
  • Group chat creation and management.
  • Support for text, image, video, emojis, and GIF sharing.
  • Real-time unread message counts.
  • Automatic scroll restoration for unread messages.
  • Real-time online/away indicators.
  • Typing indicators akin to MS Teams.
  • Time-based message modifications and deletions with real-time updates.
  • In-chat and external notification sounds.
  • Paginated message history for seamless user experience.
  • Real-time message reactions and summaries.
  • Message Seen status for personal and group chats.
  • User profile customization with high-quality profile pictures.
  • Ability to update account info and delete account on demand.
  • Fully mobile-friendly.
  • Continuously evolving with new features; open to suggestions and contributions.

Contact

Feel free to reach out with any questions, feedback, or collaboration opportunities. Let's connect and enhance the VI Messenger experience together!

About

VI Messenger is a feature rich chat application meticulously crafted from the ground up, utilizing modern technologies to deliver a seamless user experience. Built with React, Typescript, Tailwind CSS, Zustand, Socket.io, Express JS, Node JS, and MongoDB.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published