[x] Investigate using React Loadable or async loading of components
[ ] On initialization, fetch data for N modules at once in one request instead of making N requests. This will be enabled by GraphQL
[ ] Server-side search for module finder page (can be cached on client side once data is fully loaded and switch to client side filtering which can be used offline). This will be enabled by GraphQL
Starting an issue here to keep track of the performance optimizations that can be done in v3:
cache-control
headers for static assets. Consider usingimmutable
cache-control
headers for API response. It can be a few days (or even a week) when module data has stabilized (e.g. Week 3 onwards)<link rel="preload">
for faster initial JSON loading - https://developer.mozilla.org/en-US/docs/Web/HTML/Preloading_contentReferences: