Elmenate unused CSS (The size of css file is around 1MB, for the learning)
Reduce app.hash.js file size (its around 0.5MB)
The requried depencs chunk is around 2.5MB (For example checking the learning build, it seems that all users are going JS code realted the frontend-lib-speica-exams, no matter if or not they gonna use it)
Can we use preact It's a light weight alternative to react.js
Check for unsued JS code
Reduce CSS file (An example openedx/frontend-build/pull/266 Still need futher testing though)
Check for unsued Assets
Do paragon icons have all to be preloaded, checking bundle analyzer (its around 0.5MB)
Do you utilize Code Splitting/Dynamic Import when is an opportunity for, this can be ensuring code logic for uncommon use cases is only loaded when it needs to, Here are some examples which might be already taken account of
The account mfe, should not load the code realted tensorflow image, when user are in the typical user settings page
The learning MFE, should not load JS code realated special-exam when user are in courseware
For i18n: can we load strings/polyfills only when needed relate to openedx/platform-roadmap/issues/205
Use Webpack plugins to reduce code size
Serve encoded/zipped version of assets file (This has be done with tutor form the latest release)
Can we have a common assets than loads from CDN from common depends:
This solution might be optimize perforamce when going to one MFE but rather when user browse between them (Which somehting very common I assume_)
This might go in line with #126, since in theoray we shouldn't need to compile the commons aseets for every MFE
Another way of doing this can be Module Fedeartion
Area of improvment in MFEs can be:
The what
The How (Not an exlusive list,)
How to test
ls -lh dist
Other Notes