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!
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.. 👏
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.
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
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.
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.
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 :)
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?
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
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?
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.
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.
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()`?