Math Tools
This page by the Math WG keeps a non-exhaustive list of tools targeting MathML Core, the markup language for maths implemented in web engines, or MathML Full, an extension with support provided by polyfills or plugins.
🚧 Update of this list is in progress. Many of the tools may be unmaintained, or may use the legacy MathML 3 specification as a reference.
Tools for MathML Core
LaTeX converters
These tools convert a LaTeX document into a HTML page:
LaTeX-like converters
These tools convert a LaTeX-like expression into a MathML formula:
Tools for MathML Full
Browsers
JavaScript polyfills
- MathML polyfills maintained by the Math WG.
- fmath
- jqMath
- MathJax
Extensions
- Mathzilla Firefox add-on collection
- Firefox extension to force MathJax/KaTeX/MediaWiki to use Native MathML
- Greasemonkey script to force MathJax to use Native MathML
- Safari Extension to force MathJax to use Native MathML
EPUB readers
Authoring tools
Equation editors
- DragMath
- FireMath
- fmath
- Formulator MathML Weaver from Hermitech
- MathCast
- MathFlow
- MathMagic
- MathType
- Microsoft Windows Math Input Panel (handwriting recognition)
- Microsoft Equation Editor
- MyScript (handwriting recognition)
- OpenOffice.org Math editor
- Wiris editors
- Wiris hand (handwriting recognition)
LaTeX converters
These converters convert from a LaTeX input to a MathML expression
- HeVeA
- MathToWeb
- TeX4ht
- Mathematical
- latex2mathml (python)
- Converter for AsciiMath, LaTeX & MathML equations (python)
- Mathoid (JavaScript converts Wikipedia specific commands) based on Mathjax-node
- SnuggleTex (Java)
- [1] (Web, unknown)
LaTeX-like
- ASCIIMath (convert ascii- and LaTeX-like math syntax to MathML; JavaScript)
- GNU TeXmacs
- GELLMU
Scientific Computation
- Algebrator
- Geometry Expressions
- jscl-meditor
- Maple
- MathWorks MuPAD
- Maxima
- Sage
- CalcMe (via copy & paste), formely named WIRIS calc
- Wolfram Mathematica
- wxMaxima
others
- McKichan Scientific Workplace, Word, Notepad
- Matt's MathTools
- Amaya (WYSIWYG HTML editor and browser)
- BlueGriffon (WYSIWYG HTML editor)
Rendering
general purpose
MathML specific
- pMML2SVG (MathML to SVG)
- lasem (MathML to SVG)
- MathFlow (MathML to GIF/PNG/EPS/speech text)
- mml2tex converts from MathML to tex
- Wiris editors (MathML to PNG/SVG/PDF/EPS/speech text/LaTeX)
XML workflow tools
DTDs and Schemas using MathML
- W3C XHTML + MathML + SVG Profile
- CML Chemical Markup Language
- CellML
- Docbook
- NLM/NCBI/NIH Journal Article Tag Suite (JATS)
Scientific prototypes
- Python binding to approach0 It includes the operator tree parser that approach0 uses, and a linear tokenizer for latex, of course, it has core functionalities of the approach0 system. The tokenizer is useful if you want to apply it for transformer because it can reduce the vocabulary (e.g., \frac vs \dfrac) at the same time treating the tokens specially.
- The WebMIaS web search engine of EuDML (available also as a Docker image [2], and its individual components (Java):
- * MathML canonicalizer
- template for a math-aware search engine powered by the pv211-utils library (Python)
- An implementation of the soft cosine document similarity measure in the Gensim [3], [4] library (Python).
- A fork of the Tangent-CFT search engine (Python) that recognizes all LaTeX operators in arXMLiv 2019 and M-SE.
Can be used to produce SLT and OPT out of MathML.