Many people don't want to be tied to a provider to this level (I think it's all about trade offs, not saying it is a good or bad thing).
In the stack you described, in my experience, it is a real headache to get a stable and realiable system where you need authentication, permissions, users management, a CMS, background jobs, input validation, migrations, internationalization, etc.
Ruby on rails, Laravel, Django, etc provide a clean, well documented and battle tested solution to all of this. The modern stack you describe, if not outsourcing all of this to a third party, it is pretty complicated and no one builds it the same way.
That's why people complain about these modern stacks being complicated, you're just not feeling it because of the trade offs you've made. (Good for you!).
I think what the market is missing is a sort of locally run CMS that is file based with Sqlite and managed completely with Git. Something that can can be moved around with project easily and have great version control.
Let's say you have a /content folder in your project that is it's own separate git repo, and there you have .md or .txt or sqlite files, and your assets, and there's a browser based client to manage it that runs locally.
- Gatsby or Next depending on how dynamic the content is
- Firebase for db, auth, and bucket storage, and sometimes hosting
- Vercel for NextJS hosting
- Recoil for state management; after years of using Redux it feels amazing, like it's a part of React
- ImmerJS for immutability
- SASS for CSS
I love my current stack. It definitely took a while to make everything work together smoothly. I don't understand the complaints about modern web dev. I've been building websites for almost 20 years and this is the most productive and fast I've ever been.
The only thing I still haven't figured out is CMS. Tried all of the fancy new headless CMSs but nothing works for me. Working on my own.