For me, I’ll prefer minimal unused functionality.
I really don’t need user table/collection in my code! Why keep non delete-able user in every Frappe app?
Probably I’ll further break the code down to smaller services or serverless functions if project succeeds.
I’ve used mongodb along with ERPNext like following,
Case: add million serial and track warranty in ERPNext
Problem: takes 12+ hours to enter 1 million serials. System already has 20 million+ serials. Gets slower as more serial are added. (40CPU, 96GB RAM)
My solution: took out serials and warranty to mongodb, enter 1 million serials with validation under 5 sec.
Result: Customer happy with value. I get worth the effort.
Whatever Frappe framework is, it is a great tool! We can try using it to build many things! Microservices can be one of them.
Just the problem with me is, if I find something readymade in FOSS ecosystem, I’ll try not to reinvent it with frappe framework.