DEV Community

Cover image for Everything you need to Know about  Firebase
Mughees Mb
Mughees Mb

Posted on

Everything you need to Know about Firebase

What is Firebase?

Firebase is essentially a Backend-as-a-Service (BaaS) mobile and web application development platform developed by Firebase, Inc in 2011 and then acquired by Google in 2014. It provides users with hosted backend services such as a real-time database, cloud storage, authentication, crash reporting, remote configuration, and hosting for static files.

As you know Full-Stack applications need a front-end and back-end Service and Using a Back-End Service like Firebase you get all the benefits of a back-end without the complications of setting one up from scratch.


Benefits of Using the Firebase (Top Ones)

In many cases, we want a fully functioning application up and running in as little time as possible. With Firebase, you can dramatically cut development time.

Realtime DataBase

Cloud Firestore database updates all connected clients in realtime. This is excellent for many types of applications. The ability to get realtime updates makes applications a lot easier to implement.

Authentication

Firebase backend service offers a powerful authentication feature. It comes equipped with simple SDKs and easy to use libraries to integrate authentication feature with any mobile or web app.

Storage

Firebase storage feature is powered by Google Cloud Storage and allows users to easily download media files and visual contents. This feature is also helpful in making use of user-generated content.

Security

Firebase ships with built in far-reaching security. When configured correctly your app will be an impenetrable fortress. Without Firebase security is extremely hard to configure correctly.

Hosting

The hosting feature of Firebase allows developers to update their contents in the Content Delivery Network (CDN) during production. Firebase offers full hosting support with a custom domain, Global CDN, and an automatically provided SSL Certificate.

High Speed Caching

How fast your site loads not only helps with SEO but creates a better user experience. When you deploy using Firebase hosting your app gets cached on solid state drives (SSD) throughout the world. This makes site loading time extremely fast.


The Firebase API

As a programmers, we communicate with the back-end using an application programming interface (API). Firebase is certainly no exception.
Each method in the firebase object represents a different service. For example, by invoking the firebase.firestore() method you can get access to Cloud Firestore. It’s a database that you can use to store and retrieve information. by invoking firebase.auth() method you will have access to Authentication services. by invoking firebase.storage() user can store and manage media generated by web and mobile app users.


Firebase Services

These are the core services of Firebase. With them, you will be able to leverage Firebase to build fast, highly effective web applications.

  • Cloud Firestore
    • Realtime
    • NoSQL
    • Security
  • Hosting
    • SSL for Every Site
    • Cached on SSDs
    • Deploy From CLI
  • Authentication
    • Email and Password Authentication
    • OAuth Authentication
    • User Security
  • Storage
    • Can Handle Large File Sizes
    • File Security
    • Any File Type

Is Firebase Free to use?

Firebase has two pricing levels.

- Spark Plan (Free).
– Blaze Plan (Pay as you go).

The first one incorporates a limited Free tier, and it’s an excellent option for development and small applications. The second tier works on a pay as you grow model, and it’s ideal for production applications.

In Spark Plan Firebase provides us with several products that can be used for free such as:

  • Authentication
  • A/B Testing
  • Analytics
  • Cloud Messaging (FCM)
  • Crashlytics
  • Performance Monitoring
  • Remote Config
  • Dynamic Links
  • Firebase Invites

In Blaze Plan ,it provides developers with a wide variety of paid infrastructure products such as:

  • Real-time Database
  • Phone Auth
  • Firebase Storage
  • Hosting
  • Test Lab

Conclusion

There are so many services available that it can feel overwhelming, but trust me when I tell you that each service is easy to work with. Firebase documentation is pretty good as far as the documentation is concerned. I also use Firebase in all of my apps which is why I wanted to get the word out about how awesome it is.

Top comments (4)

Collapse
 
buraksaraloglu profile image
Burak Saraloglu

Can any you explain beginning of the security rules: which is hiding API keys. Since standalone react app will not have a backend, how would you hide your API keys from end user? env variables will still be accessible. That's why I'm asking.

Collapse
 
mugybro profile image
Mughees Mb

yeah sure wait..!

Collapse
 
jimmont profile image
Jim Montgomery

Have you found any particular concerns related to cost, or important details to address to manage performance especially as it relates to controlling the service usage and cost? Thanks for the article--I've used Firebase but primarily only for static hosting--not much of the data and function related services.

Collapse
 
andrewmilen profile image
andrie milen

Thanx buddy , you saved me almost ^^