I'm a big fan of rendering majority on a server and then shipping it, especially with Phoenix's LiveView which allows you to write reactive UI without writing Javascript.
But I said it in another comment: shipping value beats everything. If you can ship quickly and effectively in JAMstack to lambda, don't let anyone tell you that's wrong.