Note: This list doesn't include general performance improvements, like mentioned in this article
First View (a user visits a page for the first time or has cleared the cache/data since the last visit)
- Load the core content as fast as possible and do it server-side
- Load additional and third-party content asynrchronous
- Inline critical CSS
- Load web fonts asynrchronous and avoid FOIT and cache for repeat views, consider using no web fonts for first view
- Fetch non-critical resources asynchronous and cache for later
- Register a Service Worker and cache main assets
- Preload assets necessary for sites a user may visit next
- Store a cookie for repeat and flow views
- Save data locally
- Serve caches assets and files via Service Worker if available
- Serve Web Font from cache (LocalStorage...)
- Serve cached CSS file and don't inline critical CSS
- Load locally-saved data first, then fetch updated data later if the network permits (eg. https://bitsofco.de/bitsofcode-pwa-part-2-instant-loading-with-indexeddb/)
- Improving User Flow Through Page Transitions or similiar (Article on Smashing Magazine)