Getting started with Isar DB - Introduction in Local DB

Поділитися
Вставка
  • Опубліковано 31 лип 2024
  • If you want to see me live code, join me at: kick.com/devcafe
    Patreon Page: / flutterexp
    In today's episode, I want to explain what local Databases are and what they are used for. For example, we will implement a local DB with Isar DB in our Flutter project.
    Interesting Links:
    Repository: codeberg.org/Flutter-Explaine...
    Pub Package: pub.dev/packages/isar
    #flutter #dartprogramming #LocalDatabase
    Timestamps:
    00:00 Intro
    01:25 Why we need local Databases
    03:20 Benefits of Isar DB
    05:15 Demo Application
    07:57 Implement the logic with Isar DB
    26:00 Outro
    ** New Mentorship Program to boost your Flutter career **
    gumroad.com/products/ydgtfV
    ** Social Medias **
    Website: flutter-explained.dev
    Say hi to Max
    Twitter: / flutter_exp
    GitHub Max: github.com/md-weber
    LinkedIn: / max-weber-9889a3ba
    Matrix: matrix.to/#/#flutter-explained:tchncs.de
    Discord: / discord
    Say hi to Mahtab
    Twitter Mahtab: / mahtab_dev
    GitHub Mahtab: github.com/mt-tadayon
  • Наука та технологія

КОМЕНТАРІ • 46

  • @pauldavid2414
    @pauldavid2414 Рік тому +5

    Thanks so much for not fiddling around with how you laid out your UI and wasting time with unnecessary boilerplate, instead focusing on the DB. Great work!

  • @biplabdutta
    @biplabdutta Рік тому +19

    A small tip..
    Instead of running the build-runner command time and again, you can run
    flutter pub run build_runner watch --delete-conflicting-outputs
    With this command, if you write some code that relies on code generation and just save the code, required code will be automatically generated. So, run once and keep generating code on every save. Saves a lot of time.
    And nice video.. 👏

    • @FlutterExplained
      @FlutterExplained  Рік тому +4

      Ah right the watch command :) did completely forgot about it :) thanks for sharing!

    • @sergey_molchanovsky
      @sergey_molchanovsky Рік тому +1

      Code generation is sluggish :( Even better is to divide your code into packages (serializable models, isar entities, mobx stores etc.) and to use something like melos, to run a codegen in separate packages. That's how I do.

    • @biplabdutta
      @biplabdutta Рік тому

      @@sergey_molchanovsky that's the way to do it in a large scale app. Yup.

    • @nihalanil4444
      @nihalanil4444 Рік тому

      hey i am using vs code can you tell me why the command is not working

  • @FlutterExplained
    @FlutterExplained  Рік тому +5

    Hello again to another episode here on this channel. I was glad to work with Isar DB, and thanks once more to the creator Simon Leier (@simonleier) who helped me navigate around some interesting issues :). I hope you enjoyed the video.

  • @hitheshchowdary4366
    @hitheshchowdary4366 Рік тому +9

    Awesome, i previously used to develop isar, without having any available video for isar guidance, this will be very helpful i see new ways of developing

  • @joshpetit
    @joshpetit Рік тому +2

    Wow! What a fantastic tutorial. I absolutely love the style you have. Thank you a ton.

  • @Raimkhodzhanov
    @Raimkhodzhanov Рік тому +1

    Thank You, it was very interesting!

  • @n-tech4605
    @n-tech4605 Рік тому

    Thank you, being looking for this

  • @pravinprince3221
    @pravinprince3221 11 місяців тому

    Thank you for the wonderful video sir it is very helpful for me and my team, Thanks again sir

  • @muhamadhaydar2614
    @muhamadhaydar2614 4 місяці тому

    Thanks for the explanation.

  • @RashiShah-z2b
    @RashiShah-z2b Місяць тому

    Great stuff!

  • @Raimkhodzhanov
    @Raimkhodzhanov Рік тому

    Thank You, very interesting!

  • @thebaconbreadful
    @thebaconbreadful Рік тому +5

    Hey! You really fulled a niche with this video and did a great job doing so! It would really beneficial to link your a repository with the demo app. Also a tutorial would be nice showing how you could work around the weak points of isar e.g. if you have a more table like structure and maybe you'd even like to add rows dynamically. Thank you for the nice and clean tutorial.

    • @FlutterExplained
      @FlutterExplained  Рік тому +2

      You are most welcome. I am glad you liked the video. The repository is actually linked in the description. It is hosted on codeberg instead of github.
      codeberg.org/Flutter-Explained/isar-db-tutorial
      And I added your suggestion to my planned video list :)

    • @thebaconbreadful
      @thebaconbreadful Рік тому

      @@FlutterExplained thanks for your response and consideration of my request! Yea, I overlooked the repo. Thanks again for relinking it for me.

  • @snooki9
    @snooki9 6 місяців тому

    Great video, thanks for that :D

  • @tinabh
    @tinabh Рік тому +1

    great stuff 😂 I guess it looks like Hive is not maintained anymore, so will try Isar and see if I get it to work.

  • @treadingview352
    @treadingview352 Рік тому

    Complete series

  • @returnZeroo
    @returnZeroo Рік тому +3

    I couldn't open isar inspector on web like you.

    • @FlutterExplained
      @FlutterExplained  Рік тому

      Please check if you are working on the Isar DB version 3+ because the Web Inspector got introduced there. YOu can download the Isar Inspector as a standalone for Version 2.x
      github.com/isar/isar/releases/tag/2.5.0

  • @marasontleitu6415
    @marasontleitu6415 4 місяці тому

    I trying to store color user choose but isar don't support , so need to change to string or int i will so happy if isar support color.

  • @user-ix4jq3ef2v
    @user-ix4jq3ef2v Місяць тому

    What if I have separation of concerns and make models have its own services like: PostService, CourseService, will the code remain the same in terms of opening/getting the instance of Isar?

  • @irhasdev
    @irhasdev Рік тому

    What happen if linked entity was deleted? is its the data can still be seen?

  • @okokokokokok5173
    @okokokokokok5173 Рік тому +3

    I was looking for db like this that link the relationships directly, because i was using moor orm, or sqflite directly and it was so painful.

  • @utpalgaurav14
    @utpalgaurav14 Рік тому

    Can anyone please explain the steps on how to run Isar Inspector?

  • @treadingview352
    @treadingview352 Рік тому

    Sir pls make a video on OAuth

  • @roslanamir9760
    @roslanamir9760 Рік тому

    Dear Flutter Explained: Thanks for the video. I am working on a Flutter app for Windows desktop and I implemented Isar according to this video. Works great. But I have a problem which you may be able to help. I want to do a query to call the aggregate function to find the max value of a column. The Isar documentation suggests the .max() function but no example is given. I has asked at StackOverflow but nobody answered.

  • @Omarhi51llarious4tsxdl1l
    @Omarhi51llarious4tsxdl1l Рік тому

    How to update data???

  • @shehryarkhan7555
    @shehryarkhan7555 Рік тому

    Thanku for the isar DB tutorial How can we delete single subject not all of them for the DB

  • @DraskoSaric
    @DraskoSaric Рік тому +1

    Hi, great video! I am curious, why did you choose to use synchronous method for writing data into Isar over async approach? Is it safe to be sure that it won't affect the performance of UI main thread?

    • @FlutterExplained
      @FlutterExplained  Рік тому +3

      Hi, great question. It was not really intentional but and just wanted to make sure that the transaction is done afterwards and I can be sure that the data is there where I need them to showcase easier.
      If you do not need the data right away to move it into an async thread makes a lot of sense.

    • @DraskoSaric
      @DraskoSaric Рік тому

      @@FlutterExplained I guess you can as well write `await isar.writeTxn(...)`, that way you will be sure that the transaction is done. Am I correct?

  • @Omarhi51llarious4tsxdl1l
    @Omarhi51llarious4tsxdl1l Рік тому

    The named parameter 'initialReturn' isn't defined

  • @LeeCasey
    @LeeCasey Рік тому

    where did the isar_service.dart file come from? It wasn't generated for me.

    • @rojohnson
      @rojohnson Рік тому

      Same question, maybe I missed something but that did not create for me either

  • @treadingview352
    @treadingview352 Рік тому +1

    Sir make a video on how to fetch data from api and save to local database

  • @sergey_molchanovsky
    @sergey_molchanovsky Рік тому

    24:01 - why did you filter students by course id, if you have a backlink to students in a Course model, setup earlier?
    Cannot you do just `courses.getById(id).students.findAll()`?