Skip to content

azzamaddouri/chat_app

Repository files navigation

Chat App with Flutter, Firebase & Riverpod

Overview

This project implements a comprehensive chatting application using Flutter, Firebase, and Riverpod. It covers a range of features typically found in modern messaging apps.

Features

  • 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.

Project Demo

You can watch a demo of the project on YouTube :

Project Demo Poster