I have an existing public Angular 20 website with no logins or authentication, and a few pages.
The client has recently asked to introduce Search Engine Optimization features. They mostly want each route to have its own <title>, <meta> and <og> tags. From what I have read, I can't achieve this without turning on SSR (Server Side Rendering) for the whole website.
The architecture is very simple, the website is served on a linux WM via nginx. Next to it runs a Mini Python Job. It collects a .json file containing the websites data and adds it to the website files. The website collects this json file on startup and builds from it on the client side.
All of the the routes title and meta values are constant. Only 1 page needs needs to fill the tags from the .json file
Normally this would be a small change, but with Angular this feels almost like having to rewrite most of my application logic and build. For example I save the language data into the localStorage, but I would probably need to include it in the route now for the server etc. Not to mention the increased server load due to the server side rendering.
I'm feeling that there might be a very simple solution here that I am not seeing, as opposed to just rendering everything on the server side and rewriting a lot of parts for this. same head tags every time, thats it. How can I keep most of the client side rendering while having static <title> and <meta> tags in Angular 20?