The Ultimate Guide for Working with the Firebase Console!

Introduction The Firebase Console is the central hub for all Firebase services. Additionally, there are also some project management tasks that can be done with it. The ultimate guide for working with the Firebase Console explains everything you need to know about the following use cases: Adding apps Connect iOS, Android, Web, Unity, or Flutter apps to your Firebase project. Removing apps Remove connected apps again. Managing users Invite new people, change their roles, or remove them from the project. ...

July 19, 2023 · 13 min · xeladu

What The New Firebase AI Extensions Can Do For Your Apps

Introduction During the Google I/O 2023 developer conference, Google announced countless new features and changes for Firebase. Several new AI-powered extensions have been published since then. Here is what the new firebase AI extensions can do for your apps. AI-powered extensions added to Firebase Extension Hub Chatbot with PaLM API The Chatbot with PaLM API extension provides an AI-powered chatbot that can answer user prompts like ChatGPT. The extension uses Cloud Firestore and listens for new documents in a configurable collection. Once a valid document is available, the AI generates an answer via Cloud Functions and writes the result back to the document. This extension is useful for developers who want to add chatbot functionality to their apps without building the entire infrastructure from scratch. ...

July 10, 2023 · 3 min · xeladu

Flutter vs .NET MAUI: Which Is Better For Creating Cross-Platform Apps?

Introduction Here are my observations after extensively testing and building feature-rich apps using both Google and Microsoft frameworks. For the past few years, I have been developing both small and large Flutter applications. Flutter is an amazing framework that allows for the quick development of cross-platform apps. Initially, it was just another tool for me to experiment with, but now it’s my primary choice for new mobile projects without any hesitation. ...

May 5, 2023 · 5 min · xeladu

How To Use Animations And Animated Widgets In Flutter Apps

Introduction Here’s how you can animate your Flutter widgets to make your app stand out from the rest with ease. Make your apps look nicer and present your users a better UX with animations! Animations are the icing on your app cake. Fortunately, the Flutter team has put a lot of effort into making animations as easy as possible. In this article, I’ll show you how it’s done. I’ll also provide a sample application at the end, so you can try out everything discussed in this guide. ...

April 24, 2023 · 4 min · xeladu

Firebase WhatsApp Clone Built With Flutter in No Time!

Introduction I built a WhatsApp clone with Flutter and Firebase in a few hours. Here is what I came up with. There are a ton of messaging apps available. Some well-known players are WhatsApp, Threema, Signal, and others. Apart from a messaging functionality, they provide many other features like group chats, file transmission, or data backup. In my little experiment, I tried to recreate the messaging feature that all apps use. My requirements were the following: ...

March 31, 2023 · 7 min · xeladu

Create Your Own Custom URL Shortener with Firebase in Just a Few Simple Steps

Introduction Save coding time by using Firebase Extensions and create an URL shortening service in minutes! Here’s the full guide. With a few simple steps, you can build your own personal URL shortening service. All you need is a Firebase account and a Bitly account. The setup involves no coding. To test the service, we will write a small Flutter app. Firebase offers a variety of extensions. The major benefit is that you gain functionality without having to code anything yourself. I already wrote a detailed article about it if you need more details. ...

March 12, 2023 · 5 min · xeladu

How To Add Swipe To Dismiss In Flutter Apps For A Better UX

Introduction Here is how you can implement the swipe-to-dismiss pattern in ListViews of a Flutter applications. It takes 5 minutes to implement it. Swipe to delete is a common UI pattern in mobile applications. The user swipes an element in a direction and the system reacts with an action. Common use cases include removing entries from lists or making toast notifications disappear, for example. In this short article, I will show you how to implement the pattern in a ListView of a Flutter application. ...

February 16, 2023 · 2 min · xeladu

Clean Code, Happy Developer: How To Use Linters In Your Flutter App Development Workflow

Introduction Here is how you add and use linters in your Flutter app to enhance and maintain higher code quality. Customize them to your needs! With linters and linting rules, you can verify clean code principles and maintain high code quality during the development process of your Flutter app. A linter is a tool that analyzes source code to detect and report potential errors or issues. When you use a code editor like VSCode or Android Studio and you build your project, a static code analysis is executed to ensure, the code is free of compile errors. It uses the dart analyze command internally. On top of that, you can include additional rules with custom linters. ...

February 14, 2023 · 3 min · xeladu

Building A Simple Text Translation App With Flutter And Firebase

Introduction With Firebase Extensions you can build a simple text translation app that does most of the work for you. There are many ways to build a translation app. In this article, I am going to show you how to use Firebase for that task. A Flutter app will transmit the text to be translated to Firebase and display the final result. We will use Firebase Cloud Firestore and a Firebase Extension called Translate Text for this purpose. ...

January 3, 2023 · 4 min · xeladu

How To Work With Dialogs, Toasts, And Overlays In Flutter Apps

Introduction Flutter offers predefined widgets for dialogs, toasts, and overlays. This article shows how you use them properly with code examples. Here is how to work with dialogs, toasts, and overlays in Flutter apps! Dialogs are a common pattern in many applications. In this article, I’ll introduce you to the built-in possibilities of Flutter for creating dialogs. We will cover the following widget types: ▶ AlertDialog (and CupertinoAlertDialog) ▶ SimpleDialog ▶ Dialog ▶ Overlay ▶ Toast ...

November 16, 2022 · 3 min · xeladu

A Comparison Of 6 JsonToDart Tools For Flutter/Dart Developers

Introduction Instead of writing code yourself, you can always use generators to create Dart model classes from JSON. Here are the results of my evaluation of some free tools for you. For this test, I created a sample JSON structure that all tools need to deal with. You can find it below: Every converter will receive the same input and I’ll examine the created output. Is it runnable? Is null-safety supported? Is the code efficient? Is anything missing? Have a look at the results below. ...

August 2, 2022 · 4 min · xeladu

All You Need To Know About The Default Flutter Project Folders And Files

Introduction A new Flutter project contains a lot of files and folders. In this article, we’ll inspect them and reveal their purposes. Let’s start with an overview of what a standard Flutter project with version 3.0 will contain. We will have a look at each item in the list and discuss its purpose. Screenshot of default Flutter project structure by author .dart_tool folder ...

June 8, 2022 · 4 min · xeladu

The Flutter pubspec.yaml In Detail

Introduction The pubspec.yaml file is the main configuration file for your Flutter app. In this article, we’ll have a look at its contents. When developing a Flutter app or package, you’ll eventually come across the pubspec.yaml file. I’ll give you an overview of the contents and how to work with the file. It contains package dependency information, SDK version constraints, or project settings like the name. The used syntax is YAML, an easy-to-use and understandable format. Pay attention to indentation, colons, and link breaks. Otherwise, there will be parsing errors by the Flutter/Dart tooling. ...

June 5, 2022 · 3 min · xeladu

How To Use The Flutter Doctor Diagnostics Tool In The Right Way

Introduction If you are not feeling well, you go and see a doctor. The same goes for Flutter. The Flutter diagnostics tool helps you identify configuration problems that might hinder a successful development workflow. As the output can be very helpful, it is required to include a diagnostic summary in every bug report in the official Flutter GitHub repository. Let’s have a look at the tool and its results. Calling the doctor Run the command flutter doctor from your preferred command-line tool. Your output might look similar to this one: ...

June 3, 2022 · 2 min · xeladu

How To Use Location Services In Your Flutter Application

Introduction In this article, we are having a look at location services and how we can get the current position of the device in our Flutter application. Location information can be used in various app scenarios. Maybe you want to show points of interest to the users or guide them towards a specific area. Either way, you will need access to the current location of the device. I’ll show you how to accomplish this task. ...

April 24, 2022 · 2 min · xeladu

How To Use The Flutter Command-Line Interface

Introduction In this article, we are looking at the Flutter CLI and its most common use cases for building, testing, deploying, and running Flutter applications. When developing Flutter apps with code editors like Visual Studio Code, Android Studio, or XCode, you don’t need to use the command-line tools of Flutter in general. But all these editors use them internally all the time, probably without you noticing it. So let’s dive into the Flutter CLI and see what its capabilities are. ...

March 26, 2022 · 4 min · xeladu

Here Are My Top 5 Free extensions For VS Code For Flutter Developers

Introduction In this article, I am going to present my top 5 free extensions for Visual Studio Code to you. They offer a jump start for your development progress. VS Code is a very good code editor, not only in my opinion (see StackOverflow developer survey 2021). But today’s tools can be enhanced with extensions to make them perfect for your specific tasks. Here are the extensions that I use as a Flutter developer. ...

March 22, 2022 · 2 min · xeladu

How To Fix A Broken Branch After A Git Merge Or Git Rebase

Introduction. Problems when merging or rebasing branches in a version control system like git can happen to anyone. I want to show you one way that works pretty good to resolve the issue. Of course, there are other ways like reverting the rebase and doing it again, but I like this approach more. Relevant git commands ▶ git cherry-pick ▶ git log ▶ git checkout ▶ git branch 1 Create a new branch from the merge/rebase target Let’s assume you wanted to rebase the main branch onto your dev branch and something went wrong because the application does launch anymore. ...

March 13, 2022 · 2 min · xeladu

Flutter Mockito Package Cheat Sheet

Introduction This article is all about the possibilities of mocking that the Mockito package provides. We’ll look into setting up mocks, verifying the calls, and pitfalls to avoid. I recently published an article about mocking in unit tests with the Mockito package in Flutter apps. This follow-up article is a cheat sheet for you to quickly find an example of how to use the package. I also updated the GitHub repository of the original post and it now contains the cheat sheet as a working test class. ...

February 15, 2022 · 1 min · xeladu