I've seen a lot of SPA vs. "JavaScript sprinkles" arguments lately and I think it is a false dichotomy. You can add JavaScript interactions to a page, to existing HTML, (take a look at Vue for example) without committing to JavaScript taking over the entire page.