Beginners Guide to Firebase
By: Steve K
Tags: Development, Cloud Computing, Firebase, Technology, Programming

Photo by Myriam Jessier on Unsplash

Firebase has been something I have been working with for some time and the platform has become my quickest go-to for creating web applications the notion of making your backend a service has quickly become a household idea. Removing the thought process of having to figure out how to store and configure data has opened up many new ideas on how your product can work. Firebase is generally best described as a platform with services and products for every need you may have in the web development ecosystem.

Firebase

Firebase Database

Real-Time Database

Databases, in general, are one of the most important parts of any application as it holds our data and Firebase has two great answers for this need. One being the real-time database the real benefit being the ability to make changes on the fly and all platforms will be notified and update accordingly requiring no refresh. The standard JSON format is used to store data.

Firestore Database

The firestore service is similar to the real-time database with the distinction the Cloud firestore has more features and advanced query functionality. This makes it great for scaling as your application grows.

Firebase Authentication

Authentication is handled through many integrations with other social platforms. These social logins make it very easy to utilize the security and authentication of their respective platforms. Firebase Authentication gives support for iOS, Android, Web, C++, and unity.

Firebase Hosting

Fairly self-explanatory this service provides a hosted development service. This allows you to deploy your application in a couple of straightforward steps instructed by the visual interface on the website. This removes the need of server creation and installing security certificates.

Firebase Cloud Functionality

The last and perhaps the most important service or piece we as developers will interact with the most is the backend SDK(Software Development Kit). This SDK enables you to create CRUD enabled backend fairly quick. The benefit here is that you can create your own backend logic and deploy it as cloud functions that you make calls to in your code similar to making HTTPS calls to an API.

Firebase functions provide us with very unique triggers that we can call and use when data is inserted, changed, or deleted in the database. A simple example would be using the onWrite trigger prompting the submission of an email when someone makes a purchase much like getting an order confirmation from Amazon. This same system works both ways as the same trigger to notify you of the purchase will also be added to the database of orders for whatever company you purchased from setting up the order process to get your purchase delivered to you.

onWrite was the example used above but firebase provides many triggers to use as needed that can be run for a host of processes depending on inputs. Examples being authentication triggers for new user creation or storage trigger when someone adds a picture to their profile or sets it as their profile picture.

Conclusion

Finishing up this week's blog was a quick dive into the concepts of Firebase. Next week will probably be a demo of using AWS or Firebase to get anyone started on working in the respective environment.