user avatar on code market uikitty / in /

Flutter Firebase Chat Template

flutter firebase chat
flutter firebase chat template
flutter firebase chat functions
flutter firebase chat ScreensFlutter Firebase Chat Template Documentation

Download Demo

Flutter Firebase Chat and Messenger Premium Template from scratch, which included Firebase Auth, Cloud FireStore, Firebase Storage, Firebase Messaging, and Firestore Database. UI based on Flutter and Material Design system.

Play Demo Flutter Firebase Chat Template

We are a team of independent developers of UI kitty. For more than 10 years, each of us specializes in creating complex corporate solutions for web and mobile development. Recently, we have joined forces to start launching mobile application templates on the market that will not be inferior in functionality to the leading products on the market.

We are glad to introduce our first product. AChat – Flutter Firebase Chat and messenger template is a ready-made solution for creating a mobile application for the analog of What’s UP / Facebook Messenger and Telegram or any instant messenger chat you use.

About Flutter Firebase Chat

This is a fully-functional chat application template based on Flutter and FireBase. The project helps you to launch your own messenger application in a few clicks and publish it to the stores. The template can be used if you are going to create your own instant messenger or add full-featured chat functionality to an existing Flutter application.

Inside the Package

  • Database architecture built entirely on Firebase;
  • The design is made according to the rules of Material Design;
  • Cross-platform code implemented on Flutter.

Main Functions AChat – Flutter Firebase Chat and Messenger Premium Template

We have researched hundreds of repositories on github on the topic of instant messengers and chats, (at the time of publication of 2000+ repositories). Each of the repositories offers fairly limited options for creating chats on Flutter. For example, only sending messages from one user to another or the ability to send pictures. But almost nobody bothered with the functionality of deleting messages. There are hundreds of such micro-chips necessary in a good messenger today.

Features

We have implemented most of the necessary features in Flutter Firebase chat. That is without what the chat application template is essentially bonfire. The list of features of our messenger template in version 1.0.0:

  1. Full messenger data encryption:
    1. Encrypted messages;
    2. Encrypted usernames;
    3. Encrypted user emails;
    4. Encrypted user password;
    5. Encrypted user description;
    6. The encrypted user sends data: photo/images etc.
  2. If a chat with user exists, new chat won’t be made;
  3. Read / Unread message indicator;
  4. Read message indicator;
  5. А delivered message indicator and an undelivered  message indicator;
  6. New Message Push Notifications;
  7. Auth
    1. User Registration with Email Verification;
    2. Unique username generation from the first part of the Email. All letters before @ will be used as a user name;
    3. Login with email and password;
    4. Reset User Password;
    5. Forgot Password Link Is Redirecting Users To The External Login Entrance After Reset Request. The User’s Email address is automatically moved to the new link;
  8. Strong Field validation during registration or login:
    1. Error incorrect email;
    2. Error user doesn’t exist;
    3. Error incorrect password;
    4. Successfully reset password validation;
    5. Unsuccessfully reset password  validation;
    6. Notification if there is an empty field;
  9. Private features:
    1. Delete messages from chats;
    2. Delete messages and conversations alerts;
    3. Deleting chats with users;
    4. Deleting User account with all data;
  10. Elastic search by chats;
  11. Elastic search by contacts;
  12. On-line / Off-line user mark;
  13. If the app is closed or rolled up the user is automatically offline;
  14. Editing user accounts functions:
    1. Changing the profile picture;
    2. User picture import indicator;
    3. Changing a user’s name;
    4. Changing a user’s description;
  15. Successfully Saved picture validation in the user’s account;
  16. If the user doesn’t have a profile picture, the profile picture will be the first letter of his name in the app;
  17. Logout from the app through the profile page;
  18. Creating a chat with the user by contacts;
  19. If there is no conversation with the user, in the conversation field with that user will be a message: “no messages yet”;
  20. If there are no contacts, in the contact field will be written “no contacts yet”;
  21. Localization / RTL supported;
    1. English
    2. German
    3. Italian
  22. Possibility to send pictures from one user to another;
  23. Possibility to send Photo from the smartphone camera;
  24. Possibility to open up pictures in chat popups;
  25. Possibility to send Camera Pictures;

Used Firebase modules

  1. Cloud Functions;
  2. Cloud Messaging;
  3. Firebase Authentication;
  4. Cloud Firestore;
  5. Cloud Storage.

The architecture of the application is written in such a way as to spend less quota on Firebase. Almost all dynamically transmitted data is stored in local preferences. This saves Firebase traffic. The architecture also allows the application to work several times faster, since it does not wait for a response from Firebase, and it takes most of the necessary data from the local storage. This plays a huge role if you have poor internet. If you are going to make a small application, then the free Firebase tariff may be enough for you.

Main Screens AChat – Flutter Firebase Chat and Messenger App Premium Template

  • Welcome screen;
  • Registration screen;
  • Login screen;
  • Password Reset Screen;
  • All Chat Screen;
  • Personal Chat Screen;
  • Contacts screen;
  • User Profile Screen;
  • User Profile Settings Screen;
  • Language Switching Screen.

Architecture & File Structure AChat Flutter FireBase Template

├── README.md
├── android
├── ios
├── assets
│ ├── i18n
│ │ ├── de.json
│ │ ├── en.json
│ │ ├── es.json
│ │ ├── fa.json
│ │ └── ru.json
│ └── images
│ ├── avatar.jpg
│ └── logotype.png
├── lib
│ ├── constants.dart
│ ├── main.dart
│ ├── screens
│ │ ├── chat_screen.dart
│ │ ├── chats_screen.dart
│ │ ├── common_screen.dart
│ │ ├── contacts_screen.dart
│ │ ├── language_screen.dart
│ │ ├── login_screen.dart
│ │ ├── registration_screen.dart
│ │ ├── reset_password.dart
│ │ ├── settings_screen.dart
│ │ └── welcome_screen.dart
│ ├── services
│ │ ├── chat_arguments.dart
│ │ └── helpers.dart
│ └── test.dart
├── pubspec.lock
└── pubspec.yaml

Version Control

0.1.0
  • Added Delete all your data & account  Screen;
  • Privacy Policy Screen added;
  • Privacy Policy applies function added;
  • Screen Updates;
  • Bug Fixes;
0.0.12
  • Minor UI Updates Contacts and Profile Screens;
  • Bug Fixes Delete Message Methods;
  • Bug Fixes Null Message sending;
  • Bug Fixes Floating Action Button increase pressed area;
  • Minor Bug Fixes;
0.0.11
  • Added Privacy Policy Screen after registration a new user;
  • Added Unread Messages Indicator;
  • Added Online/Offline User Status;
  • Minor Bug Fixes;
0.0.10
  • Bug Fixes Profile Screen;
  • Added message Encryption;
  • Added Full Recursively deleting chat by user;
  • Minor Bug Fixes;
0.0.9
  • Added Data Encryption;
  • Added Method Sending Camera Image into the chat;
  • Minor Updates to Documentation;
  • Minor Bug Fixes;
0.0.8
  • Added Camera support;
  • Added App Icon IOS & Android;
  • Additional UI Minor Updates To Profile Screen;
  • Minor Bug Fixes;
0.0.7
  • Added Material Theming;
  • Added Picture Uploading into the cha;t
  • Added Picture Uploading Success Notifications;
  • Added Profile Changing Fields;
  • Added Profile Changing Success Notifications;
  • Bug Fixes;
0.0.6
  • Added Shared Preference package into the App;
  • Additional UI Minor Updates To Contacts Screen;
  • Additional UI Minor Updates To Chats Screen;
  • Additional UI Minor Updates To Chat Screen;
  • Bug Fixes;
0.0.5
  • File Structure Refactored;
  • Additional performance improvements;
  • Added Chat deleting method;
  • Added Message Deleting method;
  • Added Reset Password Screen;
  • Bug Fixes;
0.0.4
  • Added Localization with .json files;
  • Added Select Language Screen;
  • A centered title App Bar;
  • Added animation reduces header when a keyboard is open;
  • Added Sign In & Sign Up validation;
  • Bug Fixes;
0.0.3
  • Improved message bubble length;
  • Clipped picture shape;
  • Add Comments to the main screen blocks;
  • Added Settings Screen;
  • Bug Fixes;
0.0.2
  • Fix compilation error;
  • Add FireBase;
  • Added Login and Registration;
  • Added Navigation;
0.0.1
  • Initial Release.

2 reviews

  1. Kay Laoshin

    Hey. Thank you very much for the template, it’s cool that you went further than just a template after the tutorial. This is as a complete messenger, rather than just a template. I tried many different templates and tutorials. I really liked your navigation between the screens, multilanguage is cool and awesome RTL, the chats and sending images work well. And Easy to change the color scheme and all data.

  2. softwareengineerlk

    hi sir, there have any demo ? pls

    • admin

      Hello Boss. Yes Flutter Firebase Chat Template has demo link: Download Demo

Add a review

Your email address will not be published. Required fields are marked *

26
5.00 out of 5
1132
No hidden Fee and Taxes
simple
Quality checked by Codemarket
Code quality review by Codemarket
1-year Future updates included
30-day money back guarantee · Rules
Secure payment via PayPal and Stripe
Created on: 19 June 2020
Updated on: 28 November 2020
Do NOT follow this link or you will be banned from the site!