<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Imran Sefat</title>
    <description>The latest articles on DEV Community by Imran Sefat (@imransefat).</description>
    <link>https://dev.to/imransefat</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F727404%2Fbeb73d43-3683-44a4-b8df-cc405d01e316.jpeg</url>
      <title>DEV Community: Imran Sefat</title>
      <link>https://dev.to/imransefat</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/imransefat"/>
    <language>en</language>
    <item>
      <title>Cache API Integration with HydratedBLoC in Flutter (Source Codes Included)</title>
      <dc:creator>Imran Sefat</dc:creator>
      <pubDate>Wed, 27 Oct 2021 19:25:15 +0000</pubDate>
      <link>https://dev.to/imransefat/cache-api-integration-with-hydratedbloc-in-flutter-source-codes-included-42kg</link>
      <guid>https://dev.to/imransefat/cache-api-integration-with-hydratedbloc-in-flutter-source-codes-included-42kg</guid>
      <description>&lt;h1&gt;
  
  
  Introduction 🎉
&lt;/h1&gt;



&lt;p&gt;BLoC stands for Business Logic Controller. It was created by Google and introduced at Google I/O 2018. It is made based on Streams and Reactive Programming.&lt;br&gt;
&lt;br&gt;&lt;/p&gt;

&lt;p&gt;I can assure you that every intermediate-level Flutter developer in their development lifetime heard about Bloc or maybe tried to learn bloc. Bloc is one of the most popular state management choices among developers because it has rich documentation and is well maintained. But yes, there are some downsides as well, for example, a lot of boilerplate codes.&lt;br&gt;
&lt;br&gt;&lt;/p&gt;

&lt;p&gt;We will implement API integration at first, then persist the state so that when the user closes the app, it can maintain the state or load the data from the local device saved from the last API call to put it simply.&lt;br&gt;
&lt;br&gt;&lt;/p&gt;

&lt;p&gt;Note that after we kill the app, it starts right back where it left off. In addition, after it has loaded the previous (cached) state, the app requests the latest API data and updates seamlessly. Let’s get started!&lt;br&gt;
&lt;br&gt;&lt;/p&gt;

&lt;p&gt;&lt;br&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fmiro.medium.com%2Fmax%2F500%2F0%2AOOohPMPoLAgC_hXS" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fmiro.medium.com%2Fmax%2F500%2F0%2AOOohPMPoLAgC_hXS" alt="I won"&gt;&lt;/a&gt;&lt;br&gt;
&lt;br&gt;&lt;/p&gt;
&lt;h1&gt;
  
  
  Steps 👣
&lt;/h1&gt;
&lt;h4&gt;
  
  
  1. Configuring the Flutter Project
&lt;/h4&gt;
&lt;h4&gt;
  
  
  2. Add the datamodel
&lt;/h4&gt;
&lt;h4&gt;
  
  
  3. Creating the bloc
&lt;/h4&gt;
&lt;h4&gt;
  
  
  4. Creating the bloc state and event
&lt;/h4&gt;
&lt;h4&gt;
  
  
  5. Creating the Bloc Repository
&lt;/h4&gt;
&lt;h4&gt;
  
  
  6. Implementing the bloc
&lt;/h4&gt;



&lt;p&gt;&lt;br&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fmiro.medium.com%2Fmax%2F320%2F0%2A9wL0qaE3oOUUd0Nl.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fmiro.medium.com%2Fmax%2F320%2F0%2A9wL0qaE3oOUUd0Nl.gif" alt="I won"&gt;&lt;/a&gt;&lt;br&gt;
&lt;br&gt;&lt;/p&gt;
&lt;h1&gt;
  
  
  1. Configuring the Flutter project ⚙️
&lt;/h1&gt;

&lt;p&gt;Let’s add the necessary packages that we’re going to use throughout the application.&lt;/p&gt;

&lt;p&gt;Copy the dependencies to your Pubspec.yaml file. I am using the latest version available now at this moment.&lt;/p&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;


&lt;p&gt;Then we need to install it with:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;flutter packages get
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;You will get to understand everything as we go ahead.&lt;/p&gt;

&lt;p&gt;&lt;br&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fmiro.medium.com%2Fmax%2F415%2F0%2ABB4B-IgNEWa0TJvb" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fmiro.medium.com%2Fmax%2F415%2F0%2ABB4B-IgNEWa0TJvb" alt="Datamodel"&gt;&lt;/a&gt;&lt;br&gt;
&lt;br&gt;&lt;/p&gt;
&lt;h1&gt;
  
  
  2. Add the datamodel 📳
&lt;/h1&gt;

&lt;p&gt;We will implement the “FREETOGAME API”. For this, we have to make a datamodel of the API’s response. I have used the following website to make the datamodel class. It’s pretty easy, copy the JSON response and paste it on the website. The website will generate a class for you.&lt;br&gt;
&lt;br&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Website Link: &lt;a href="https://ashamp.github.io/jsonToDartModel/" rel="noopener noreferrer"&gt;https://ashamp.github.io/jsonToDartModel/&lt;/a&gt;&lt;br&gt;
Don’t forget to tick the Null Safety checkbox!&lt;br&gt;
&lt;br&gt;&lt;/p&gt;
&lt;/blockquote&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;





&lt;p&gt;Another datamodel that will contain the list of the games refers to the code below.&lt;br&gt;
&lt;br&gt;&lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;
&lt;br&gt;
&lt;br&gt;

&lt;p&gt;The above code will show you some errors, as you can see that the 5th line contains a code that indicates that this file is part of another file that needs to be generated. Another thing, look at the 7th line, it is indicating that we will serialize so that we can save the response for later use.&lt;br&gt;
&lt;br&gt;&lt;br&gt;
Open a terminal and run the below code.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;flutter packages pub run build_runner build&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;br&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fmiro.medium.com%2Fmax%2F320%2F0%2AgBkU4Qpdn7UjipHp" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fmiro.medium.com%2Fmax%2F320%2F0%2AgBkU4Qpdn7UjipHp" alt="bloc"&gt;&lt;/a&gt;&lt;br&gt;
&lt;br&gt;&lt;/p&gt;
&lt;h1&gt;
  
  
  3. Creating the bloc
&lt;/h1&gt;




&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;
&lt;br&gt;
&lt;br&gt;&lt;br&gt;
It contains the logic behind the main bloc. Now we have to make the event and state as well.

&lt;p&gt;&lt;br&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fmiro.medium.com%2Fmax%2F352%2F0%2A7-mIGJ58Wj7HPjwm" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fmiro.medium.com%2Fmax%2F352%2F0%2A7-mIGJ58Wj7HPjwm" alt="bloc"&gt;&lt;/a&gt;&lt;br&gt;
&lt;br&gt;&lt;/p&gt;
&lt;h1&gt;
  
  
  4. Creating the bloc state and event
&lt;/h1&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;
&lt;br&gt;
&lt;br&gt;

&lt;p&gt;There can be three(3) states.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Game list is loading -&amp;gt; GamelistLoading&lt;/li&gt;
&lt;li&gt;Game list loaded -&amp;gt; GamelistLoaded&lt;/li&gt;
&lt;li&gt;Game list cannot be loaded -&amp;gt; GamelistError&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;br&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fmiro.medium.com%2Fmax%2F480%2F0%2AoRzNrsG2ehRBKYEm.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fmiro.medium.com%2Fmax%2F480%2F0%2AoRzNrsG2ehRBKYEm.gif" alt="loading"&gt;&lt;/a&gt;&lt;br&gt;
&lt;br&gt;&lt;/p&gt;
&lt;h1&gt;
  
  
  5. Creating the Bloc Repository👾
&lt;/h1&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;


&lt;p&gt;We are calling the API using the HTTP package form from this file or class.&lt;/p&gt;

&lt;p&gt;&lt;br&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fmiro.medium.com%2Fmax%2F480%2F0%2AmmOy98cWIGqgpjPd.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fmiro.medium.com%2Fmax%2F480%2F0%2AmmOy98cWIGqgpjPd.gif" alt="loading"&gt;&lt;/a&gt;&lt;br&gt;
&lt;br&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  6. Implementing the bloc🛠
&lt;/h1&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;
&lt;br&gt;
&lt;br&gt;&lt;br&gt;
This portion contains the UI and the Bloc implementation. You can check the main function. It is instantiating the hydrated bloc in the temporary directory.&lt;br&gt;
Note that after we kill the app it starts right back where it left off. In addition, after it has loaded the previous (cached) state, the app requests the latest API data and updates seamlessly.&lt;br&gt;
&lt;br&gt;&lt;br&gt;
&lt;br&gt;

&lt;h1&gt;
  
  
  Congratulations! 🎊
&lt;/h1&gt;

&lt;p&gt;You just integrated an API with HydratedBloc that has Caching.&lt;/p&gt;

&lt;p&gt;&lt;br&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fmiro.medium.com%2Fmax%2F480%2F0%2As1NXqYGxJqv9Tk9x.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fmiro.medium.com%2Fmax%2F480%2F0%2As1NXqYGxJqv9Tk9x.gif" alt="success"&gt;&lt;/a&gt;&lt;br&gt;
&lt;br&gt;&lt;/p&gt;



&lt;h1&gt;
  
  
  Contact Me🌎
&lt;/h1&gt;

&lt;p&gt;YouTube Channel: &lt;a href="https://www.youtube.com/c/CodingwithImran" rel="noopener noreferrer"&gt;Coding with Imran&lt;/a&gt;&lt;br&gt;
Twitter: &lt;a href="https://twitter.com/ImranSefat" rel="noopener noreferrer"&gt;@ImranSefat&lt;/a&gt;&lt;br&gt;
LinkedIn: &lt;a href="https://www.linkedin.com/in/imransefat/" rel="noopener noreferrer"&gt;MD. Al Imran Sefat&lt;/a&gt;&lt;br&gt;
Facebook Page: &lt;a href="https://www.facebook.com/CodingWithImran" rel="noopener noreferrer"&gt;Coding with Imran&lt;/a&gt;&lt;/p&gt;

</description>
      <category>flutter</category>
      <category>api</category>
      <category>bloc</category>
      <category>cache</category>
    </item>
    <item>
      <title>Firebase Authentication with GetX in Flutter</title>
      <dc:creator>Imran Sefat</dc:creator>
      <pubDate>Sat, 16 Oct 2021 15:53:21 +0000</pubDate>
      <link>https://dev.to/imransefat/firebase-authentication-with-getx-in-flutter-4ik8</link>
      <guid>https://dev.to/imransefat/firebase-authentication-with-getx-in-flutter-4ik8</guid>
      <description>&lt;h1&gt;
  
  
  Introduction 🎉
&lt;/h1&gt;

&lt;p&gt;You know about GetX. It is an extra-light and robust solution for Flutter. It combines high-performance state management, intelligent dependency injection, and route management quickly and practically.&lt;/p&gt;

&lt;p&gt;&lt;br&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fmiro.medium.com%2Fmax%2F498%2F1%2Attg9ZoWbDPCV74ESDvmOHw.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fmiro.medium.com%2Fmax%2F498%2F1%2Attg9ZoWbDPCV74ESDvmOHw.gif" alt="I won"&gt;&lt;/a&gt;&lt;br&gt;
&lt;br&gt;&lt;/p&gt;

&lt;p&gt;I’m going to be honest; I’m not that pro at using GetX. So one day, I wanted to use GetX to make a flutter app with firebase authentication to understand better, but I was confused. Then it took me some time to figure out how it was working, and eventually, I succeeded and fell in love with the world of GetX.&lt;/p&gt;

&lt;p&gt;&lt;br&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fmiro.medium.com%2Fmax%2F500%2F1%2AUD8yxXPlM3xhZaumoBtz7A.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fmiro.medium.com%2Fmax%2F500%2F1%2AUD8yxXPlM3xhZaumoBtz7A.gif" alt="I won"&gt;&lt;/a&gt;&lt;br&gt;
&lt;br&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  Let’s Get Started 🎯
&lt;/h1&gt;

&lt;p&gt;I will assume that you have a starter template setup to enter email, password, or a button to login with Gmail. Let’s list the steps necessary to make the authentication process.&lt;br&gt;
&lt;br&gt;&lt;br&gt;
&lt;br&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  Steps 👣
&lt;/h1&gt;

&lt;h3&gt;
  
  
  1. Configuring the Flutter Project
&lt;/h3&gt;

&lt;h3&gt;
  
  
  2. Connect App to Firebase
&lt;/h3&gt;

&lt;h3&gt;
  
  
  3. Creating the Auth Controller
&lt;/h3&gt;

&lt;h3&gt;
  
  
  4. Inject the auth controller
&lt;/h3&gt;

&lt;h3&gt;
  
  
  5. Login or Signing up Users
&lt;/h3&gt;

&lt;h3&gt;
  
  
  6. Success
&lt;/h3&gt;



&lt;p&gt;&lt;br&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fmiro.medium.com%2Fmax%2F320%2F1%2ADk3weLuWt6CezEwKZriHdg.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fmiro.medium.com%2Fmax%2F320%2F1%2ADk3weLuWt6CezEwKZriHdg.gif" alt="I won"&gt;&lt;/a&gt;&lt;br&gt;
&lt;br&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  1. Configuring the Flutter project ⚙️
&lt;/h1&gt;

&lt;p&gt;Let’s add the necessary packages that we’re going to use throughout the application.&lt;/p&gt;

&lt;p&gt;Copy the dependencies to your Pubspec.yaml file. I am using the latest version available now at this moment.latest version available now at this moment.&lt;/p&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;
&lt;br&gt;
&lt;br&gt;

&lt;h1&gt;
  
  
  2. Connect App to Firebase 🤝
&lt;/h1&gt;

&lt;p&gt;Now we have to connect our app to firebase. First, go to the firebase console and create your project if you haven’t already. You will see an option to add an app to firebase. Depending on your preference and requirement, do that. The steps are pretty straightforward, and firebase will show you what to do and how.&lt;/p&gt;

&lt;p&gt;&lt;br&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fmiro.medium.com%2Fmax%2F700%2F1%2AOL30IVcxpNRQtNU0f8CX0A.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fmiro.medium.com%2Fmax%2F700%2F1%2AOL30IVcxpNRQtNU0f8CX0A.png" alt="Firebase Console"&gt;&lt;/a&gt;&lt;br&gt;
&lt;br&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Don’t forget to enable the Email/Password Sign in and Google Sign In methods.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;br&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fmiro.medium.com%2Fmax%2F700%2F1%2AHpZoBQBpBGWkxmkogfYHQA.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fmiro.medium.com%2Fmax%2F700%2F1%2AHpZoBQBpBGWkxmkogfYHQA.png" alt="Sign In Method"&gt;&lt;/a&gt;&lt;br&gt;
&lt;br&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  3. Creating the Auth Controller 🎮
&lt;/h1&gt;

&lt;p&gt;First, let’s make a constant file for the sake of simplicity and not to get confused or code duplications. Copy the below codes and paste them into your dart file inside the lib folder.&lt;br&gt;
&lt;br&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Suggestion: Make a folder inside of the lib folder titled Constants.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;
&lt;br&gt;
&lt;br&gt;&lt;br&gt;
&lt;br&gt;

&lt;p&gt;Now let’s create the Auth Controller where all of our business login related to Firebase Authentication will work. Just copy the below codes and paste them into your dart file inside of your lib folder.&lt;/p&gt;



&lt;blockquote&gt;
&lt;p&gt;Suggestion: Make a folder for titled Controller.&lt;/p&gt;
&lt;/blockquote&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;
&lt;br&gt;
&lt;br&gt;

&lt;h1&gt;
  
  
  4. Inject the Auth Controller 💉
&lt;/h1&gt;

&lt;p&gt;We have created the Auth Controller, but how are we going to use it? Let’s hop into the main.dart file and make some changes to our code.&lt;br&gt;
&lt;br&gt;&lt;/p&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;
&lt;br&gt;
&lt;br&gt;

&lt;blockquote&gt;
&lt;p&gt;Here, we are initializing the firebase and injecting the AuthController instance in the 4th line.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;br&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fmiro.medium.com%2Fmax%2F500%2F1%2AGiGyQlLWQTmmYb2EiQriwA.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fmiro.medium.com%2Fmax%2F500%2F1%2AGiGyQlLWQTmmYb2EiQriwA.gif" alt="Sign In Method"&gt;&lt;/a&gt;&lt;br&gt;
&lt;br&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Our dependencies are completed and initialized. Now let’s sign up some users.&lt;br&gt;
&lt;br&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h1&gt;
  
  
  5. Login or Signing up Users 🙋‍♂️🙋‍♀️
&lt;/h1&gt;

&lt;p&gt;I assume you have a basic or super beautiful Signup or login screen ready. If not, you can copy my code for the screen, but note that it’s a super simple screen.&lt;br&gt;
&lt;br&gt;&lt;/p&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;
&lt;br&gt;
&lt;br&gt;

&lt;p&gt;The above code is pretty self-explanatory. There are just two (2) text fields for email and password, one button to login and one to Register / Signup. The last elevated button is for the google authentication popup.&lt;/p&gt;

&lt;h1&gt;
  
  
  6. Success 🎉
&lt;/h1&gt;

&lt;p&gt;You just implemented Firebase Authentication in Flutter with GetX.&lt;/p&gt;



&lt;p&gt;I have a Youtube Channel Named &lt;a href="https://www.youtube.com/c/CodingwithImran" rel="noopener noreferrer"&gt;“Coding with Imran”&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Do subscribe to my channel if you want to get future updates!&lt;/p&gt;

</description>
      <category>flutter</category>
      <category>firebase</category>
      <category>authentication</category>
    </item>
  </channel>
</rss>
