After 6 years working on a 20 years old PHP codebase, I had tammed the backend enough to have an incredibly productive architecture. I've been running Laravel on AWS Lambda since 2019 and I've blogged a bit about it: https://blog.deleu.dev/running-lambda-behind-application-load-balancer/ https://blog.deleu.dev/authenticating-aws-cognito-with-laravel/ https://blog.deleu.dev/a-monorepo-approach-to-larger-modules-in-laravel-and-lambda/ https://blog.deleu.dev/what-it-means-to-run-a-monolith-on-aws-lambda/
The component itself then makes some API calls to a backend API and load, surprise surprise, state into it's own scope.
With Inertia mindset, Vue components are split into 3 categories: Pages, Code Context and Components.
Vue could do with some more community components, specially in the headless space, but it's not a deal breaker.