I also, independently, started writing an app in Flutter for fun (no experience in mobile/desktop GUI work, several years since I've worked in front-end web). I can give a list of pros/cons that probably overlaps what you've heard:<p>Pros:<p><pre><code> - The toolkit feels fairly mature and not too hard to parse. I think there's a lot of "this class works with defaults and breaks otherwise" feeling, though the core components are robust enough that this isn't a huge concern.
- It was super easy to build for Android, iOS, and Mac all at the same time. Everything Just Worked (so far).
- It was very performant
- Very easy to add your own painting code if you wanted a custom component.
- The debug view is so so useful for figuring out painting and layout issues.
</code></pre>
Cons:<p><pre><code> - I didn't understand Futures very well (and honestly still don't); this might be an issue with people working with modern Python/JavaScript/whatever.
- Because of the above, interacting with a database / JSON on disk felt a little contrived. In particular JSON parsing felt very non-obvious, even though it feels like at this point is should be a first-class feature.
- It still produced relatively fat binaries, though not sure how much of that was debug/release mode.
- My computer ran hot while running Flutter, though not sure how much of that is debug/release mode.
</code></pre>
Overall I'm very very happy with it. It was the kind of project where when I had time to work on it, after work, I had a list of things I wanted to do, and I could quickly check off feature after feature instead of fighting the system. That made me add more desired features, etc., but very enjoyable.