Version 3 is in Lit, version 2 was Svelte, but those choices were because I liked NodeJS and wanted to see how close I could stay to vanilla Javascript, but I'm abandoning NodeJS, in general, due to poor choices on their part. I don't believe in investing more into sink just because it works and is functional. It degrades over time and becomes harder to upgrade. That's what NodeJS is, a degrading sink. It's bloated AF and getting more bloated.
Moving forward I have been moving to Rust. Leptos is a great framework I've discovered and it works with Actix. I've been interested in the Islands Architecture and hoping that helps with cutting down the leptos WASM bundle size. Leptos does progressive upgrading so if WASM isn't a thing for a browser then it does fallback.
I'm already using Rust elsewhere for serving server side rendered html, but that's
basic templating which works. Order of magnitude smaller application size and ram
usage compared to NodeJS. When you have to question if the application was actually deployed compared to the older one, you know there was a big big drop in resource usage somewhere. Only so many times I can remember that feeling. It's amazing.
For this blog, leptos server side rendering means less JS code to push to the users, well maybe not that it was much anyway. WASM bundles are relatively big, but again hope over time the bundles will decrease more as the whole islands architecture goes into stable. I will make sure that this goes smoothly. I hate to be again changing how serving works, but it is for the better.
This blog started with WordPress, but moved away since it got defaced/hacked whatever the cool kids use these days. I haven't needed to maintain this blog the same way with Wordpress hoping that a new version wouldn't brick anything and that it doesn't introduce new vulnerabilities. Since moving away all security worries are towards the front end servers instead rather than the application itself. Those front end servers are easy to upgrade and generally won't break anything.
Server side rendering was always a thing with PHP, so with Rust I'm all for it. Use client side rendering for SPA/Web Applications. Put React/Vue/Svelte in the trash as well. 😉