Consider lazy-loading MathJax and CodeMirror in editor
- Dominant language
- Rust
- Stars
- 31.2k
- Forks
- 3.2k
- Avg merge
- 2d 8h
- Merged PRs (30d)
- 72
Description
MathJax appears to account for about 1/3rd of our (2.9MB large!) editor bundle, and codemirror appears to be the second-largest contributor. If we were able to lazy-load these as required, we may be able to improve editor startup time for users who don't use MathJax or the HTML editor by default. We're also using the full MathJax bundle - maybe there's a way to lazy-load the required parts? A good starting point would be to just strip them out and compare editor loading time before and after, to see what sort of performance gains there are.
Contributor guide
Research direction
Start by locating the editor bundle and its MathJax and CodeMirror usage, then measure editor loading time with those dependencies included and stripped out. Done means the performance impact is quantified and a viable lazy-loading direction for MathJax and CodeMirror is identified.
Written by the indexing model from the issue text.
Assessment
- Domain
- frontend, performance
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100