In my last article I created large overview through all possible state management solutions and GetX is second the most popular State management in Flutter community right now.
So why I am not using it?
One year ago I started develop my first Flutter application and I found GetX as a good tool. But unfortunately one year later I found out GetX is not so good solution for me.
I was finding also why GetX is so controversional in Flutter community in Reddit and I found that exists many people which have also some not good experiences with GetX or their opinions are different: Opinion 1, Opinion 2, Opinion 3
Here are some my personal points why I am not using GetX:
In documentation is not everything what is already implemented and it is missing for a long time there.
In GetX 4.2.0 were released big changes with Navigator 2.0 but without documentation. Exists many opened issues where people request some documentation for Navigator 2.0:
But there are not any answer from main maintainer of GetX.
Version 4.2.0 was released in July 2021 and today is January 2022 and issues are still without answer.
There is only one small piece of documentation for one month in WIP from some one volunteer: https://github.com/jonataslaw/getx/pull/2032
How you can see in previous point, in GetX can exists a lot of issues which can be also duplicit. Here it is obviously that nobody cares about issues like: solving, answering, tagging, remove duplicity, etc.
If maintainer doesn't have a time so he can entrust or find somebody for it -> GetX have a very big community but nobody did it.
Around GetX is very big community which are making quite a lot of PR but a lot from this PR are opened without any activity:
All this PRs are ready to merge for a long time during writing this article (1.January 2021)
But nobody check and merged it yet.. Why?
I feel this project is too big for only one person.
GetX is solving:
- State management
- Depency injection
- making http requests
- many utilities for: dialogs, snackbars, bottomSheets
- and maybe many more..
But maintainer is only one and he doesn't have a time for fix or improve absolutely everything.
This all is job for minimal 3 full-time people.
But without sponsors you cannot maintain for full-time on this project like author of Bloc package for example..
All previous points are leading into one result:
In this big project will be a lot of bugs.
When come some update so it is danger that bring some bugs. Documentation is not updated and when you create some issue you can wait for a long time then it will be fixed (if sometimes)
I hope that this my article is useful for you and if it's true let me know it by give a like or some comments below. ;-)