The application architecture
Now that we are acquainted with Firebase and AngularFire, we will take a look at how the app will be designed:
As shown in the preceding diagram, we will be using Firebase as our data store. We will be using AngularFire in our Ionic application to interact with Firebase. The Ionic application will also be interacting with Cordova plugins to implement device features via ngCordova.
In the chat application we are building, the role of Firebase is to manage the chat data. There are two endpoints we will be creating in our Firebase collection:
Online users: This end point will store all the users who are online
Chats: This end point will store the chat between two users
As part of the chat application, we will allow users to:
Send text messages
Share photos from the gallery
Take a picture and share it
Share the user's location
We will be saving all this data in Firebase. Are you wondering how we save images in Firebase? Well, this is the smart part; we will be converting...