A Remarkable plugin for converting $...$ and $$...$$ in Markdown text into math HTML using KaTeX.
26
stars
56
commits
JavaScript
primary language
Aug 18, 2026
updated
This is a Remarkable plugin that converts
LaTeX math expressions between $...$ (inline) or
$$...$$ (block) delimiters into math HTML. It should not interfere with any other Markdown processing.
I use this to perform server-side math expression rendering for my blog, Keystroke Countdown. The post Metalsmith Plugins for Server-side KaTeX Processing talks about the implementation of this package as well as a Jupyter IPython notebook plugin that does similar processing.
Install this package using npm:
% npm install [-s] remarkable-katex
Assuming you already have Remarkable installed, one way to use would be like so:
CommonJS
const { Remarkable, utils } = require('remarkable');
const plugin = require('remarkable-katex');
const md = new Remarkable();
md.use(plugin, {delimiter: ''});
ES6
import { Remarkable, utils } from 'remarkable';
import { rkatex } from 'remarkable-katex';
const md = new Remarkable();
md.use(rkatex, {delimiter: ''});
Accepts a delimiter option that defines the 1-character delimiter to use when recognizing KaTeX spans. Default
is the $ character.
{delimiter: '$'}
There are a set of Vows in index.test.js. To run:
% npm test
NOTE: if this fails, there may be a path issue with
vowsexecutable. See package.json.
JavaScript
100.0%
A Remarkable plugin for converting $...$ and $$...$$ in Markdown text into math HTML using KaTeX.
26
stars
56
commits
JavaScript
primary language
Aug 18, 2026
updated
This is a Remarkable plugin that converts
LaTeX math expressions between $...$ (inline) or
$$...$$ (block) delimiters into math HTML. It should not interfere with any other Markdown processing.
I use this to perform server-side math expression rendering for my blog, Keystroke Countdown. The post Metalsmith Plugins for Server-side KaTeX Processing talks about the implementation of this package as well as a Jupyter IPython notebook plugin that does similar processing.
Install this package using npm:
% npm install [-s] remarkable-katex
Assuming you already have Remarkable installed, one way to use would be like so:
CommonJS
const { Remarkable, utils } = require('remarkable');
const plugin = require('remarkable-katex');
const md = new Remarkable();
md.use(plugin, {delimiter: ''});
ES6
import { Remarkable, utils } from 'remarkable';
import { rkatex } from 'remarkable-katex';
const md = new Remarkable();
md.use(rkatex, {delimiter: ''});
Accepts a delimiter option that defines the 1-character delimiter to use when recognizing KaTeX spans. Default
is the $ character.
{delimiter: '$'}
There are a set of Vows in index.test.js. To run:
% npm test
NOTE: if this fails, there may be a path issue with
vowsexecutable. See package.json.
JavaScript
100.0%