What is Firebase?
Firebase is a mobile and web development platform build on Google infrastructure. It delivers 18 ready to use services including Machine Learning Kit. With Firebase it’s super easy and straightforward to setup your app authentication flow, store users data or analyze the usage. It is perfect for MVPs but not only.
Let’s describe a few core Firebase services a little more:
It simply and securely authenticates app users and provides third party auth methods with google, facebook, twitter, microsoft, yahoo, github and even phone number. We can easily build custom authentication flow on top of Firebase Authentication using cloud functions and firestore.
It is a flexible, scalable NoSQL cloud database for mobile, web and server development. It keeps data in sync across client apps and provides offline support so we can build responsive apps regardless of internet connectivity. In addition it is possible to create own security rules to protect users data even more.
It provides a way to store and serve user-generated content such a photos or videos and similar to Firestore we can run custom security rules to secure users content.
One of the biggest advantages of firebase which makes it possible to create very complex and custom functionalities. We can run our own cloud https functions or trigger some functionality depending on Firestore/Storage updates. With this tool in hands we are also able to integrate almost every third party software like for example online payment processing.
Cross-platform messaging solution that lets you reliably deliver messages to your clients with no cost. Now it’s super easy to notify app users about updates or special offers.
You can setup everything with just a few clicks and you’re free to use all of the Firebase’s core features. After registering the project we need to copy credentials and past it to the codebase, that’ all! Their simple and modern UI makes it even more easy to at least try things without any technical experience. They deliver pre-made APIs to connect your app with the platform features so we are able to create functionalities like authentication very rapidly. For little more experienced developers it is possible to even extend Firebase with a custom logic using cloud functions so there are no limits!
Focus on growing not supporting
Firebase is a truly time and money cutthroat due to the work of Firebase development teams and support. They deliver fully tested and production ready services which means we don’t have to focus on planning, developing and then supporting backend side. In addition all of the firebase features are well prepared to scale and grow automatically with your app without any troubles. To sum up there is no need to worry about backend architecture when amount of app users grows more and more.
Not just for mobile
We already know Firebase is targeted for mobile apps, nonetheless we can use it for web development without a stress. Keep in mind that Firebase is built on top of Google Cloud which is a general use platform. As a result you can build your Firebase backend and use both in mobile app and web app at the same time.
There are about 1.5M apps around the world using Firebase, including a few well known companies like Duolingo, The New York Times, trivago, alibaba.com and shazam. That shows Firebase is already a trusted partner for development teams and owners who want to grow their apps and businesses. Vast community is also a big advantage for developers who look for a solution because there is a big amount of resources about firebase services available online, however in most cases Firebase documentation is truly sufficient.
Firebase platform is available under 3 clear plans including free one:
Spark Plan – free of charge plan that gives an opportunity to try each one of provided services. Even it is free the limits are quite generous for example you can store 1GB in Firestore which is about 20 millions chat messages.
Flame Plan – it offers fixed pricing for growing apps and costs $25 per month. It’s the best solution for apps that already started getting more traction.
Blaze Plan – pay as you go plan for all apps at scale. To help calculate the average costs Firebase introduced a neat pricing plan calculator.
Firebase vs AWS
There are a lot of online disputes between Firebase and AWS followers. It’s certainly true that AWS provides more services and freedom in using them but frankly we believe that Firebase services are just enough to develop complex apps as fast as it is possible. In addition Firebase is more user friendly so new developers can almost immediately dig into code which is time saver. Anyway we recommend to deeply consider the pros and cons of each platform before starting development. Each app has its own requirement so it’s quite hard to pick the best solution.
If you’re creating an MVP you want every possible edge to get to the finish line quickly and avoid bugs. You shouldn’t be worried at all about scaling or maintaining troubles down the road at this stage. Build it cheap and build it fast. Use Firebase!