Google offers the Firebase suite of application development tools, available free or at cost for higher degree of usages, priced flexibly accorded to features needed. The suite includes A/B testing and Crashlytics, Cloud Messaging (FCM) and in-app messaging, cloud storage and NoSQL storage (Cloud Firestore and Firestore Realtime Database), and other features supporting developers with flexible mobile application development.
$0.01
Per Verification
React (React.js)
Score 8.9 out of 10
N/A
React or React.js is a JavaScript library for building user interfaces. React enables users to create interactive UIs.
Full-Stack Digital Marketer & Accessibility Expert
Chose Firebase
I actually only have experience with Firebase. It's for a good reason. It's the first database I worked with and just stuck with it. It's beginner friendly while offering advanced tool.
Firebase provides an event based data model with well defined pre-determined dimensions. Where I've seen the strength of other platforms is the user interface where data is analyzed. However, other platforms such as AEP also have advanced data cleansing and standardization …
Supabase seems to have the best of all worlds right now. Followed by MongoDB/Firebase for smaller projects requiring less manpower and resources. Azure and Microsoft are reserved for existing projects and larger corporate clients.
Although there are other backend platforms that could have provided us with a solution to our project. The way of grouping the solution in FIREBASE, atomizing in the same project the database, cloud functions, authentication, push notifications, etc., has given us a clearer …
Unlike other tools in the GCP suite that have an equivalent in other clouds such as Bigquery (Athenas on AWS), AI Platform (Sagemaker), Storage (S3), we do not find an equivalent as complete as Firebase in any other provider. This is the main reason why we chose this provider …
Firebase came to a multiuse case for our product for authenticating backend services, users on the app & get data on the user base using the dashboard.
Firebase has a single NoSQL database, it is a simple, powerful and uniform application development platform in connectors, it has multiple programming languages such as JavaScript and necessary tools that will simplify the creation of applications.
Firebase poses great documentation and integration with Android devices. And it's very good as well for iOS ones. So, for these scenarios, Firebase becomes the ideal ally.
It eases the app development process, has an extensive database that allows you to store media files in the cloud, supports robust uploads and downloads, and login authentication on any platform.
Firebase is easy to manage and scale really well for web application services. It offers better authentication and is easy to implement. For real-time analytics on web applications, it works very well. Firebase offers more features compared to other services especially it can …
Firebase is a much more comprehensive tool. While Fabric only had user traffic and trends data, it did not have the user communication set of tools. While CleverTap has CRM tools, it does not have tools for developers and product teams. While Adobe Analytics is good with …
I haven't played much with Heroku beyond deploying projects from Github. It looks to be very similar in providing a cloud-based platform for developing and deploying web apps as quickly as possible. I would look at comparing both of these before choosing a solution. I am just …
Before using Firebase, we exclusively used self hosted database services. Using Firebase has allowed us to reduce reliance on single points of failure and systems that are difficult to scale. Additionally, Firebase is much easier to set up and use than any sort of self hosted …
Firebase does a lot of things well, but Branch.io does a lot of things great. We originally chose Firebase because it was free, had great crash reporting, and full event tracking. As we began to scale, increase paid marketing spend, and implement features such as journey …
It's tough to pick out competitors against Firebase as I'm really unsure and doubt there's another product exactly like it. As mentioned before Firebase literally does everything you can imagine for a mobile application but doesn't get insanely deep in one feature or action. It …
Firebase is well suited for projects with simpler database workloads that require its real-time features. For data that is heavily read in real time, it's a great choice and gives developers a lot of features that would have been complicated and time-consuming to build up front …
This was very difficult because flutter is extremely easy to use and if you have React in the background, it makes it even easier. What makes Flutter a little better is the response, the components are rendered before the loading and that gives the user a better experience. The …
I have also used Angular before coming to React. Web apps created with React are much faster than Angular because React is based on virtual DOM which reloads only those components of the web page that change and everything else remains the same. Angular's learning curve is also …
I have also used Vue, Angular, and Ember for various projects. Out of the three, I am most intrigued by Vue. It takes a more beginner-friendly approach than React and changes some of the abstractions it uses to be more transparent to the user. It also comes with a lot more …
There are other options for building SPAs, and the two most common aside from React are Vue and Angular. React has been the leader of the pack for a while and has been an innovator. Angular is good for companies that want an opinionated framework so that it standardizes …
Like most people, I started in serious client-side web development with the introduction of jQuery, the first robust library for cross-browser DOM manipulation. React provides a much closer WYSIWYG translation from the declarative JSX template to HTML elements compared to using …
While this is a widely contested debate with various blog posts and benchmarks all over the place, its really a personal choice to determine what works for the team. Coming from a Angular 1.x background, I decided to try a new framework when Angular 2.x was announced and at …
When choosing a front-end framework, you have a ton of choices. There are numerous articles that will try to convince you this way or that about which one is better. I have used Blaze as a UI layer for Meteor Application development quite extensively and have found it to …
Firebase should be your first choice if your platform is mobile first. Firebase's mobile platform support for client-side applications is second to none, and I cannot think of a comparable cross-platform toolkit. Firebase also integrates well with your server-side solution, meaning that you can plug Firebase into your existing app architecture with minimal effort.
Firebase lags behind on the desktop, however. Although macOS support is rapidly catching up, full Windows support is a glaring omission for most Firebase features. This means that if your platform targets Windows, you will need to implement the client functionality manually using Firebase's web APIs and wrappers, or look for another solution.
React is a JavaScript user interface construction library that works well for:
Developing web apps with dynamic and complicated user interfaces.
creating reusable UI elements that may be used in other applications.
creating single-page applications with dynamic content updates that don't require a page reload.
The Virtual DOM's effective updating mechanism allows it to handle large volumes of data updates.
React, on the other hand, might be less suitable for:
Websites that are simple, stagnant, and have no interaction. Other libraries or simple HTML, CSS, and JavaScript may be a better fit in such circumstances.
Web sockets may be a better choice for applications that need real-time updates, such as chat or gaming apps.
When creating mobile apps, React Native is a better option.
Server side rendering only, as React is designed to run on the client side.
Extremely robust. Has about any tool you can think of under one roof making it extremely useful as a backup platform for data analytics or small teams that need something quickly.
Intuitive and easy UI/UX. Being made and owned by Google, you expect nothing less. Very easy to use for anyone that has any marketing or analytical experience especially in Google Analytics (which I just assume all marketers do).
Safe, secure, and sturdy. Never need to worry about downtimes or misinformation as it's as clean and safe as it is being run by Google.
FREE! What else is there to say. Unless you're an extremely large application handling hundreds of thousands to millions of users, this pay as you go plan will stay free.
Solid backing by large organization (Facebook) thats committed to keeping the development on the project. In my mind, this is the number one priority for any library because without this: time is wasted on getting up-to speed on a library that you will never use, have a codebase with a library thats hard to maintain because few years down the lane, hiring devs to maintain an unsupported library is very difficult.
As with any libraries, open source community's support is critical for success of any framework because this allows for more pre-built components that could be used right out-of-box => makes Development using React a breeze.
React's Stateful and Stateless components make organizing your code a breeze. These components would also allow for writing clean Unit Tests on the logic.
React's component lifecycle. It offers a variety of lifecycle methods, that allows for handling different scenarios of loading and manipulating data in the UI.
I found React's documentation very well maintained with plenty of examples explaining each feature.
Responsiveness is a very important criteria in selecting a UI and React is very responsive. It does some neat optimizations on re-rendering using virtual DOM and would only re-render parts of the DOM that changed. These optimizations makes React Applications feel really fast.
React Native would allow for building applications that span across web and mobile interfaces (iOS and Android). This makes learning React even more enticing, because using a single library, you could build applications that span across Web, iOS and Android.
create-react-app is an effort by Facebook (creators of React) that makes getting started with React really easy. It does all the heavy lifting of configurations for you and allow you to focus on just development.
Small footprint, minified React + React DOM is under 150Kb, that makes loading UI's with react really fast.
React + Enzyme (backed by Airbnb) + Sinon + Mocha + Chai makes unit testing the UI components fun and improves the overall maintainability of the project.
Firebase/Firestore has very limited support for querying more complicated items; for example, performing a simple string search is not possible.
While upfront costs are low, costs can grow quickly if you're not careful about what you are being billed for.
Dashboards have at times shown different information to what is billed, and support from Google is less than stellar and not as effective as that from Amazon or Microsoft.
React's state management can get hairy if you have a deeply nested component and need to pass things up or down the tree very far. This is where libraries like Redux come in, however.
The progressive nature of its development and change cycles can leave information outdated online faster than other frameworks. This can make finding help or documentation on 3rd party sites frustrating.
The learning curve on "thinking in React" can be slightly higher than other more familiar patterns of web development.
Building an app in it can be cumbersome to set up with webpack, but things like Create React App can get you going in a jiffy.
I don't use the Firebase UI much, but rather connect it to GA4. GA4 has a great event model but the GA4 UI and analysis capabilities are limited. It's harder to measure product usage type of engagement but if you have the time and resources to leverage the GA4 to BiqQuery export you'll have all the raw event data you'll need for deep analysis, segmentation, and audience activation.
There are a few things that may take some getting used to when coming to a modern JS frontend. Tools like Babel and Webpack (or abstractions that hide their details from you) are often a starting point and JSX can be confusing at first. But assuming the developer is already familiar with modern frontend tools, React is a very natural fit and makes creating user interfaces a joy.
Our analytics folks handled the majority of the communication when it came to customer service, but as far as I was aware, the support we got was pretty good. When we had an issue, we were able to reach out and get support in a timely fashion. Firebase was easy to reach and reasonably available to assist when needed.
Since it's open-source and very popular, the community support for React and related tools and libraries is excellent. There are a lot of people using the same tools, and so issues tend to get fixed quickly and "recipes" are easy to come by. And since it's backed by Facebook, they have a dedicated engineering team working on the progression of React.
Before using Firebase, we exclusively used self hosted database services. Using Firebase has allowed us to reduce reliance on single points of failure and systems that are difficult to scale. Additionally, Firebase is much easier to set up and use than any sort of self hosted database. This simplicity has allowed us to try features that we might not have based on the amount of work they required in the past.
There are other options for building SPAs, and the two most common aside from React are Vue and Angular. React has been the leader of the pack for a while and has been an innovator. Angular is good for companies that want an opinionated framework so that it standardizes practices. However, Angular is known to be more difficult to work with and unnecessarily complex. Vue is seen as taking the best from React and Angular, and it is built for incremental upgrades. Vue has a passionate and growing user base, but it hasn't quite caught React in popularity.
Firebase has been able to help us understand reliably, the drop-off in our user flows with their funnel feature. This has made it easy for us to be able to pinpoint weaknesses in our funnel and test and optimize with data as the dependent variable.
From an economic standpoint, we don't pay for Firebase which is great, but as the saying goes "You get what you pay for" also holds true in this context. As we looked to grow and scale, we looked for a paid solution.
From a developer resource standpoint, Firebase has been extremely easy to integrate into our app. Whether it be the event tracking, dynamic links or crash reporting we have not had to waste too much developer time thanks to their well-organized developer docs.
Since we're still in the conversion cycle, all the data is not in. But React has had a positive impact on Developer productivity and the ability to produce efficient, highly flexible UX. This in turn, enhances our customer experience, which is generally the most important component of our ROI.
Conversion has been difficult since it requires a change of mindset. Most developers have adapted quite well, but the process has been lengthy, and 2 years in, we are still not fully converted. This essentially is a temporary negative impact on ROI.