I built much more performant apps without lazy loading or caching when using html and a sprinkle of JS.
Key: when user clicks on something, this causes 0 to 1 HTTP requests.
We didn’t do lazy loading or caching either.