Comment by stefan_lec

11 hours ago

Have you tried Astro? It lets you do exactly that: server-side rendering with HTML templates in component form, with css scoped to the component. No shadow dom needed, no JS frameworks either.

Astro is still fundamentally different, it's not server-side rendered in the sense of dynamic pages. I can't, in a language agnostic way, use Astro to receive a request, get data from the database and render an HTML representation of this data. This won't work in a Go, Rust, or whatever server. Astro at a minimum requires its own compiler to build the static assets, a server to serve them, and a custom API to answer the calls so it can build the dynamic part of pages.