KaTeX is a fast, easy-to-use JavaScript library for TeX math rendering on the web.
- Fast: KaTeX renders its math synchronously and doesn't need to reflow the page. See how it compares to a competitor in this speed test.
- Print quality: KaTeX’s layout is based on Donald Knuth’s TeX, the gold standard for math typesetting.
- Self contained: KaTeX has no dependencies and can easily be bundled with your website resources.
- Server side rendering: KaTeX produces the same output regardless of browser or environment, so you can pre-render expressions using Node.js and send them as plain HTML.
KaTeX supports all major browsers, including Chrome, Safari, Firefox, Opera, and IE 8 - IE 11.
Download the built files from the releases page. Include the katex.min.js
and katex.min.css
files on your page:
<link rel="stylesheet" href="/path/to/katex.min.css">
<script src="/path/to/katex.min.js"></script>
Specify UTF-8 as your content type:
<meta charset="utf-8">
Call katex.render
with a TeX expression and a DOM element to render into:
katex.render("c = \\pm\\sqrt{a^2 + b^2}", element);
To generate HTML on the server, you can use katex.renderToString
:
var html = katex.renderToString("c = \\pm\\sqrt{a^2 + b^2}");
// '<span class="katex">...</span>'
Make sure to include the CSS and font files, but there is no need to include the JavaScript.
See CONTRIBUTING.md
KaTeX is licensed under the MIT License.