Flyer Chat

Flyer Chat is a platform for creating in-app chat experiences using Flutter.

This repository contains Firebase BaaS implementation for Flutter. We are also working on our more advanced SaaS and self-hosted solutions.

Actively maintained, community-driven Firebase BaaS for chat applications with an optional chat UI.

Getting Started

Requirements

Dart >=2.12.0 and Flutter >=2.0.0, Firebase project.

Read our documentation or see the example project. To run the example project you need to have your own Firebase project and depending on the platform you want to:

  1. Create an iOS app with a bundle ID com.example (only required for the example project, you can use anything for your app) in Firebase console of your project and download generated GoogleService-Info.plist. Put it in the example/ios/Runner folder. You don't need to open Xcode to do it, it will expect this file in this folder.
  2. Create an Android app with package name com.example (only required for the example project, you can use anything for your app) in Firebase console of your project and download generated google-services.json. Put it in the example/android/app folder.
  3. Create a web app in Firebase console of your project. You will see a script that will look like this
 <!-- Firebase Configuration -->
<script>
  var firebaseConfig = {
    apiKey: "...",
    authDomain: "[YOUR_PROJECT].firebaseapp.com",
    databaseURL: "https://[YOUR_PROJECT].firebaseio.com",
    projectId: "[YOUR_PROJECT]",
    storageBucket: "[YOUR_PROJECT].appspot.com",
    messagingSenderId: "...",
    appId: "1:...:web:...",
    measurementId: "G-...",
  };

  // Initialize Firebase
  firebase.initializeApp(firebaseConfig);
</script>

Create a firebase-config.js file in the example/web folder and put there only js part like this

var firebaseConfig = {
  apiKey: "...",
  authDomain: "[YOUR_PROJECT].firebaseapp.com",
  databaseURL: "https://[YOUR_PROJECT].firebaseio.com",
  projectId: "[YOUR_PROJECT]",
  storageBucket: "[YOUR_PROJECT].appspot.com",
  messagingSenderId: "...",
  appId: "1:...:web:...",
  measurementId: "G-...",
};

// Initialize Firebase
firebase.initializeApp(firebaseConfig);

After all of this is done you will need to register a couple of users and the example app will automatically suggest email and password on the register screen, default password is Qawsed1-. To set up Firebase Security Rules so users can see only the data they should see, continue with our documentation.

GitHub

https://github.com/flyerhq/flutter_firebase_chat_core