Compact and clean is very far from my experience writing a very simple library management app with flutter. The framework literally gets in the way. You can't do anything without having to deal with some convoluted callback mechanism. You can't manipulate any object without some forced async crap. And it's so verbose. Despite my best efforts to keep things clean and organized, I get lost in the very small codebase after a couple of weeks. It's got to the point where I'm just rewriting it with Qt quick instead. It was my first time touching both flutter and dart, so maybe it's all subjective, but right now I think it's just a badly designed language/framework.
We must have very different definitions of compact, with Go requiring dozens of lines of boilerplate where other languages make do with one line of '?' or '.filter'.
First party lsp and plugins for IntelliJ, VSCode, formatter, test, Flutter, etc.
It’s like Go meets Java, but in a great way.