First, the similarities must be noted, for any reasonable discussion to be had. For example, the reductio ad finem conclusion of the premise of this post is to use any old static site generator like Jekyll or Hugo since it will result in no JS payload.

Costs and Benefits of JS Blogging

However, both Gatsby and Sapper offer clientside rehydration, which makes the subsequent page navigation very fast. It is also easy to:

progressively add dynamic features without a major refactor

code in reusable components

and leverage the vast JS ecosystem to add functionality.

Yes, these are all available through other means. I'm aware.

This is by no means a free tradeoff: as Addy Osmani recently noted, an "uncanny valley" of rehydration exists, and Alex Russell consistently warns that better developer experience is not without its costs. Nicole Sullivan recently noted we don't even have the language and terminology yet to intelligently discuss tradeoffs between first and subsequent loads. These matter in different contexts.

Syntax Highlighting

As for Sapper JS size, I originally used PrismJS, which adds ~19kb of JS, beacuse as a developer you can pry syntax highlighting from my cold dead hands. So it wouldn't be fair to compare a site without syntax highlighting to my old site with one.

However, there are no-JS solutions for syntax highlighting, since I don't intend readers to edit the code in runtime. Andrew Branch recently twote about how to preprocess ALL your syntax-highlighting using some VSCode API's. I put this off as too complicated, but Khrome tipped me off that the open source shiki library from the Vue ecosystem does the same thing and so I managed to get that in.

High End Lighthouse Score

The default, no throttling Lighthouse scores are totally fine. I'm not going to be read by the next billion users when I don't even have 200 subscribers on my mailing list. These are all going to vary based on the specific implementation details of the site (in particular, how much time/effort I spend on it) so don't pay this too much mind, but not that they're all... alright. Definitely not a failing grade: