Node.js
Installation
npm
Install with npm
:
npm install katex
# or globally
npm install -g katex
Yarn
Install with Yarn
:
yarn add katex
# or globally
yarn global add katex
Building from Source
To build you will need Git, Node.js 10 or later, and Yarn.
Clone a copy of the GitHub source repository and its submodules:
git clone --recursive https://github.com/KaTeX/KaTeX.git
cd KaTeX
Then install dependencies and run build
script:
yarn
yarn build
It will automatically transpile code and include only necessary fonts for
target environments specified by Browserslist config.
For example, if you are making a web app for a kiosk with Chrome 68, run
BROWSERSLIST="Chrome 68" yarn build
and it will produce build with no
transpilation, as it fully supports ES6, and only include WOFF2 fonts.
You can override included fonts using environment variables. Set USE_(FONT NAME)
environment variable to "true"
or "false"
, to force a font type to be included
or excluded, respectively.`
If you'd like to use the built KaTeX in other projects, install the package by specifying the path:
yarn add /path/to/KaTeX
# or using npm
npm install /path/to/KaTeX
You can manually download the package and source code from GitHub releases.
Importing
KaTeX is exported as a CommonJS module, which can be imported using require
:
const katex = require('katex');
If you're using a module loader, transpiler, or bundler that supports interoperability
between ECMAScript module and CommonJS module, you can use import
:
import katex from 'katex';
KaTeX also provides an ECMAScript module:
import katex from 'katex/dist/katex.mjs'
The ES module contains ES6 syntaxes and features, and may need transpiling to use in old environments.
See the API for available functions in the katex
module.
Including in webpages
To render any HTML generated by e.g. katex.renderToString
, you will
still need to link the CSS file, make the KaTeX font files available to the
client, and use the HTML5 doctype. See browser usage.
Note, however, that you do not need to include katex.js
on the client.
Using mhchem extension
The mhchem extension
adds its features by modifying the katex
module. So you can use KaTeX with
mhchem in Node as follows:
const katex = require('katex');
require('katex/dist/contrib/mhchem.js'); // modify katex module
const html = katex.renderToString('\\ce{CO2 + C -> 2 C0}");