Per-route rendering explained
In your routes.ts manifest, every route() call accepts a render option: "ssg", "ssr", "isg", or "spa". Groups inherit defaults — you can set render: "ssg" on a group and override individual routes.
SSG routes run their loader at build time. SSR routes run it per-request. ISG routes run it at build time, then revalidate on a timer. SPA routes skip server rendering entirely and load the component in the browser.
After the first page load, client-side navigation takes over for all modes. The static HTML only matters for the initial request and search engines.