Remix seems to use an approach similar to Hotwire Turbo Frames and a syntax of React JSX. This allows creating composable pages and loading partials in a page while still being able to create React components.
The main use case for me is web3 where almost all libraries are in Javascript. And I want to have the least friction for this move. It basically encapsulates the server and client side of an HTTP request in a single component and handles the json parsing operations under the hood.
You can argue that it might not necessary and a template engine can come much handier. I believe NestJS handles that but if you need the React JSX and reusable components it can be quite practical.