Вместо ухода от mobx можно было просто написать адаптер под react query и использовать его в рамках существующих классов. Тем более его уже написали и достаточно скачать библиотеку react query mobx. Касаемо mobx, он в первую очередь нужен для реактивности, а ваша проблема заключалась не в том, что mobx какой-то не такой, а в том, что использовался неправильный инструмент, вам нужен был клиентский кэш, вот и все.
Длинные цепочки наследования - зло, нужно предпочитать композицию
Вместо ухода от mobx можно было просто написать адаптер под react query и использовать его в рамках существующих классов. Тем более его уже написали и достаточно скачать библиотеку react query mobx. Касаемо mobx, он в первую очередь нужен для реактивности, а ваша проблема заключалась не в том, что mobx какой-то не такой, а в том, что использовался неправильный инструмент, вам нужен был клиентский кэш, вот и все.
Длинные цепочки наследования - зло, нужно предпочитать композицию
Почему вы называете методологию раскладывания файлов по папочкам архитектурой?
Есть es-toolkit, там есть compatible функции из лодаша, весит меньше и есть тришейкинг