Blog logo on a black background with the words "Discover What's Next in Tech!"

It's FrontendFriday - conclusion of our Firebase series

Hello to all #FrontendFriday Readers, this week our Firebase series is unfortunately coming to an end. We would therefore like to briefly review what we have learned about Firebase so far and finally bring all the threads together for a conclusion on the use of Firebase.

Summary of the Firebase series

By way of introduction, a brief review of all the contributions to the series.

  • Firebase Authentication
    • A robust solution that enables developers to implement secure, user-friendly and scalable authentication in their apps. Firebase Authentication offers multiple login methods, including email/password, Google, Apple, phone number, Facebook, Twitter and more, allowing developers to reduce the number of accounts and passwords required. It also gives them access to various libraries and secure authentication methods with advanced encryption.
  • Firebase Extension & Dynamic Links
    • Firebase Extensions are packages that can be added to a Firebase project with a simple click to provide additional functionality. One example is the Firebase extension "Image Resize", which optimizes and scales images in a chat application without developers having to write the complex code themselves and can save time.
    • Firebase Dynamic Links are platform-independent links that can direct the caller to specific content, such as a native app in the app store of a smartphone or even content within the app.
  • Firebase App Check & Remote Config
    • Firebase App Check is a security feature designed to protect Firebase resources from misuse by ensuring that only authentic requests are sent by user clients. Attestation providers add tokens to the requests, which are scanned by Firebase to filter abusive requests. This helps to prevent unnecessary costs and manipulation of the endpoints by only allowing access to authenticated clients.
    • Firebase Remote Config enables personalization and improvement of the user experience by allowing real-time changes to app features and content without the need for an app update. This is particularly useful for A/B testing, personalization and real-time customization without the need for new releases.
  • Firebase cloud messaging
    • Firebase Cloud Messaging (FCM) is a cross-platform service that enables developers to send and receive notifications and data messages. Key capabilities of FCM include notification delivery, versatile message targeting for specific devices or groups, and the ability to send messages from client apps to the server.
  • Firebase Performance & Analytics
    • Firebase Performance helps to monitor the application. For example, in relation to the automatic recording of the start time, http requests and network requests. In addition, Firebase Performance can help identify areas in the app that can be optimized and detect important changes in app performance.
    • Firebase Analytics helps to analyze usage behavior in the app. It is possible to create up to 500 user-defined events, which are used for the analysis.
  • Firebase Local Emulator
    • The Firebase Local Emulator is essentially a collection of tools that allows developers to run features of Firebase products such as Firestore, Firebase Authentication, Realtime Database, Cloud Functions and more locally on the computer. This shortens development time, saves costs as no resources have to be used in the cloud and we have increased security.

Conclusion of the Firebase series

After these six interesting articles on the various functions and offers of Firebase, we can draw a conclusion on its use.

Advantages

Firebase offers interesting tools from both a development and a business perspective. Among other things, these can be used to increase development efficiency by providing us with ready-made modules for recurring tasks. It offers great advantages, especially with regard to the security of the applications we develop, as we are always up to date and don't have to worry about implementation details such as encryption or authentication. In addition to these necessary modules, we also get many convenience modules, such as remote config, cloud messaging or the app check, which improve both the developer experience and the user experience. We are also provided with many metrics that we can use to adapt the application even better to the user, try out new business models and always maintain an overview of our application.

Disadvantages

All these advantages on the one hand also lead to the biggest weakness of Firebase, namely that we are in an ecosystem. We have to develop our app "the Firebase way", which can mean more work in the event of subsequent changes or new requirements. This can mean that many functions no longer work or have to be re-implemented when the application is migrated. In such a case, the convenience within Firebase becomes its biggest flaw. Or you have to live with the fact that you are "tied" to Firebase.

Conclusion

As with all tools in software development, you need to be clear from the outset about what the requirements for the application are in order to be able to make good decisions. Firebase offers many advantages that can simplify the creation of an application enormously and also offers many useful functions in further operation in order to be able to offer a successful application. If it meets your own requirements, it can definitely simplify and enrich the development process and operation.

 

Learn more about frontend development

Alexander Wahl

About ME

Alexander Wahl has been working as a Frontend Developer at doubleSlash in Friedrichshafen on Lake Constance since 2022. He completed his studies in Munich and Weingarten, where he already focused on web technologies and applications. Since then, he has been working with 3D development as well as React and Angular.

All contributions from Alexander Wahl

Learn more

Further information on our website and in our newsletter

Arrow up