We use nextjs at work and I hate it. Why write each view once when you could write it twice?
I'm open to the idea that we're doing it wrong and that there's a correct and pleasant way to write nextjs, but I think with the tools available today, everyone should just profile and optimize their app so they don't need to render it serverside.
I recommend ditching Next.js in favor of Tanstack Start^1, an alternative metaframework that gives you more freedom, better DX, and better defaults. Stick w the best aspects of SPAs and introduce SSR selectively if and when it makes sense.
1. https://tanstack.com/blog/tanstack-start-1-0
Or for a serious stack like Phoenix Liveview.
Liveview is neat, but it still has quite some raw edges - and it’s not really meant for SSG which is the topic at hand
I'd be grateful if whoever downvoted my comment could explain what they found objectionable.
Didn't downvote, but my thought on your comment is: "More freedom" -> "More decision paralysis & anxiety", "New better framework X" -> "Latest hypecycle that will be require me to rewrite and relearn a framework that is deprecated in 18 months" etc.
Why are you writing the same view twice?