I'm working on a project with Laravel + Unpoly. It's an extremely easy and straight forward stack. And I knew zero PHP when I started, but I don't find it difficult at all.
I never used Rails other than doing it's tutorial, etc. And I only know hotwire by their docs, so I can't do a real life / production code comparison.
But from my understanding, Unpoly manages to achieve almost the same thing that Turbo + turbo frames can do, plus some other extra goodies such as modals (now layers), forms validation, etc. I honestly like Unpoly a lot more, and it also works with any backend framework "as is", given it does not require any special behaviour from the backend. That's a big win in my opinion...learning a tool that can be used everywhere can't be a bad thing.
The only thing I miss in Unpoly, is something equivalent to Stimulus. You do have "compilers" which allow you to attach custom JavaScript to any Dom element, but everything you do there is pretty manual and imperative. For these use cases I also use Alpine.
I've been using node/react for a lots of years. This year I started working on a project built with Laravel. I can confirm it is a GREAT framework. Suddenly everything is reasonably easy again.
After like 8 years working with node/react, this year I got into this exact stack.. and OMG... feels like cheating. I had forgotten life could be easier.
I used to think like this, but nowadays I think that's no a real problem, at eñadt to me. I find it very easy to go across different JavaScript projects with different libraries, etc. Usually the worst part is understanding the business domain, the warts of the application, the know bugs, problems, etc.
The libraries used, as long as they have documentation and are supported and more or less widely used...that's fine, they're easy to learn. And if I have to switch between 10 different projects, then for me that's the actual problem, not the fact they have different architectures.
What has been a terrible experience for me, was when at two past companies in an attempt to "standardize" they ended up with custom in house libraries and wrappers, all of them built in house, undocumented, with the original developers already gone and nobody knowing/wanting to touch them. And then the rejection of any kind of improvement or modernization because "then that new app will have a different architecture"... So what? We have a terrible one, and we need to do every project terrible, so everything is consistently terrible.
> So, if you're doing all of this effort anyway, why go through the effort of using the HTML input checkbox at all?
Because HTML is the only way to do a checkbox?... Even if you use JavaScript, at the end of the day you'll have to generate HTML for it to render... so then why go through the effort of using JavaScript for a checkbox at all?
Meanwhile I'm having a ton of fun (and better metrics) by just rendering html from the server and using Unpoly for interactivity and "old style ajax" dynamic updates. And still building the entire application in JavaScript, end to end.
The closest thing I can think of to what you're asking for is https://tallstack.dev/. You have everything you might need there and you will have to take zero decisions tech stack related.
There are also those "no code" tools, but I've never used them and I'm pretty skeptical about it.