This project implements a comprehensive chatting application using Flutter, Firebase, and Riverpod. It covers a range of features typically found in modern messaging apps.
- Phone Number Authentication: Uses Firebase for authentication.
- One-to-One & Group Chatting: Supports chatting with contacts only, including:
- Text messages
- Image, GIF, video, and audio (with recording)
- Emoji sharing
- Media Handling: Includes image and video caching to optimize performance.
- Status Updates: Allows users to set a status visible to contacts only, which disappears after 24 hours.
- Video Calling: Supports one-to-one and group video calls.
- Online/Offline Status: Shows real-time online/offline status of contacts.
- Message Seen Feature: Indicates when a message has been seen by the recipient.
- Automatic Scrolling: Automatically scrolls to the latest message in a chat.
- Message Replying: Allows users to reply to specific messages.
You can watch a demo of the project on YouTube :