is, for all intents and purposes, perfect, as a browser-based, client-side rendering solution. The problem is that many offline build tools are using it in conjunction with other languages, in lieu of anything better. For example, Kramdown, a Markdown converter written in Ruby, calls out to MathJax, in JavaScript, to render math equations. In fact, nearly every single program I found that’s used to render documents calls out to the MathJax JavaScript library to perform math rendering. We’ve stopped using JavaScript solely on the client-side, and have begun interspersing it with other languages. This causes horrid performance. Expecting MathJax to render documents on your local machine takes far longer than it should. I’ll show a demo of this later on.