Necessary version to build this app is: Flutter version 3.10.0
I had one problem during the status 200, It has an error in the json, I imagine it's on purpose.
I decided to go deeper and use the Records instead of some package like dartz/fpdart The idea was to reduce coupling with respect to packets. I tried to make the code as simple and uncoupled as possible.
Regarding the error classes like UserErros, ApiErrors, HomeErrors, I decided to use the Sealed class which has the objective of limiting our use control, in my view it fits like a glove since it forces the developer to maintain a pattern in this case.
During the development I had a slight problem with the Bloc tests, in some situations, the test hung for 30 seconds. More information is on the link below, the solution is already implemented here
I setup a basic workflow for us to see the project doing the tests.
I have a lot to improve on myself related to code/test/doc flow, but for that, I necessarily need to be surrounded by people who know more than me for this to happen, I can learn absurdly quickly and I like to share knowledge, believe that way we can create a good ambient with the team to push up at the same time.