├── LICENSE └── README.md /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2016 Peter Krautzberger 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Tools for math on the web 2 | 3 | Some tools around math on the web 4 | 5 | * computational libraries 6 | * [math.js](http://mathjs.org/) 7 | * [combinatorics.js](https://github.com/devanp92/combinatorics.js) 8 | * [vectorious](https://github.com/mateogianolio/vectorious) 9 | * [numericJS](http://www.numericjs.com/) 10 | * [Sylvester](https://github.com/jcoglan/sylvester) vector, matrix and geometry library 11 | * [MathLib](https://github.com/alawatthe/MathLib) 12 | * [algebra.js](https://github.com/nicolewhite/algebra.js) Build&solve algebraic equations; includes LaTeX-like output to pass to renderer. 13 | * [algebrite](https://github.com/davidedc/Algebrite), CAS in JS 14 | * [KAS](https://github.com/Khan/KAS) "lightweight JavaScript CAS" 15 | * [Polynomial.js](https://github.com/infusion/Polynomial.js) "A JavaScript library to work with polynomials" 16 | * [simple-statistics](https://github.com/simple-statistics/simple-statistics), statistics in JS 17 | * [stdlib](https://github.com/stdlib-js/stdlib) "stdlib is a standard library for JavaScript and Node.js, with an emphasis on numerical and scientific computing applications." 18 | * [propelML](http://propelml.org/) "Propel provides a GPU-backed numpy-like infrastructure for scientific computing in JavaScript." 19 | * [math-expressions](https://github.com/kisonecat/math-expressions) "Math-expressions is client- or server-side JavaScript library for parse expressions like `sin^2 (x^3)` and do some basic computer algebra with them, like symbolic differentiation and numerically identifying equivalent expressions." 20 | * [geometric](https://github.com/HarryStevens/geometric), "A JavaScript library for doing geometry." 21 | * [TheoremJS](https://github.com/arguiot/TheoremJS), "A Math library for computation in JavaScript" 22 | * editors (wysiwyg etc) 23 | * [mathlive](https://mathlive.io) 24 | * [DraftJS MathJax Plugin](https://github.com/efloti/draft-js-mathjax-plugin) 25 | * [mathjax-editor](https://github.com/ianlucas/mathjax-editor) 26 | * [fmath](http://www.fmath.info/) 27 | * [mathquill](https://github.com/mathquill/mathquill) 28 | * [ckeditor mathjax latex plugin](http://ckeditor.com/addon/mathjax) 29 | * [equation editor](https://github.com/camdenre/equation-editor) 30 | * [Mathslate tinymce/moodle editor](https://github.com/dthies/moodle-editor_tinymce-mathslate), see also [this](https://moodle.org/mod/forum/discuss.php?d=255377). Not quite an "editor": [@efloti's tinymce plugin](https://github.com/efloti/plugin-mathjax-pour-tinymce), [@dthies's tinymce plugin](https://github.com/dthies/tinymce4-mathslate). 31 | * [fMath](http://fmath.info/), TeX, MathML, also image output; requires Flash, Java. 32 | * [Wiris](http://www.wiris.net/) both MathML and TeX, also image output 33 | * [Texthelp EquatIO](https://www.texthelp.com/en-us/products/equatio/), "easily add equations, formulas, graphs and more to g suite for education apps and microsoft word" (handwriting, speech, voicing in Read&Write using speech-rule-engine) 34 | * [MathYlem](https://ylemkimon.github.io/mathylem/) 35 | * [guppy](https://github.com/daniel3735928559/guppy) 36 | * other / need review 37 | * [formulasheet.com](http://formulasheet.com) unclear if available as plugin 38 | * [hostmath](http://hostmath.com) unclear if available as plugin 39 | * [mathicando.com](http://www.mathicando.com/) MathML only, unclear if available as plugin 40 | * [sharemath.com](http://sharemath.com) both MathML and TeX, Flash 41 | * [mathaway](https://mathway.com/) (internal format: TeX) 42 | * [latex4technics](http://www.latex4technics.com/) (internal format: TeX) 43 | * TeX-like output (i.e., trying to be faithful to Appendix G, TeX book) 44 | * [MathJax](https://github.com/mathjax/mathjax)'s TeX input (direct successor of [jsmath](http://www.math.union.edu/~dpvc/jsMath/)). 45 | * [KaTeX](https://github.com/Khan/KaTeX/) 46 | * equation convertors (with repetitions) 47 | * output: visual 48 | * [MathJax](https://github.com/mathjax/mathjax) 49 | * [jqmath](http://mathscribe.com/author/jqmath.html) 50 | * [mathquill](https://github.com/mathquill/mathquill) 51 | * [fmath](http://www.fmath.info/) 52 | * [mathematical](https://github.com/gjtorikian/mathematical) A wrapper around Lasem and mtex2MML to generate SVG, PNG, MathML. 53 | * [katex](https://github.com/Khan/KaTeX) 54 | * [math-ml](https://github.com/pshihn/math-ml), web components using simple CSS, early beta 55 | * input: TeX-like (i.e., trying to be faithful) 56 | * [MathJax](https://github.com/mathjax/mathjax) 57 | * [iTeX](https://golem.ph.utexas.edu/~distler/blog/itex2MMLcommands.html) 58 | * [mathquill](https://github.com/mathquill/mathquill) 59 | * [katex](https://github.com/Khan/KaTeX) 60 | * [latex2mathml](https://pypi.python.org/pypi/latex2mathml/1.0.10) (Python) 61 | * [fMath](http://fmath.info/) 62 | * input: ascii/unicode-focused 63 | * [AsciiMathML](https://github.com/asciimath/asciimathml/) 64 | * [ascii2mathml](https://github.com/runarberg/ascii2mathml) 65 | * [asciimath2tex](https://github.com/christianp/asciimath2tex) 66 | * [jqmath](http://mathscribe.com/author/jqmath.html) 67 | * [Microsoft Office linear format](https://support.office.com/en-us/article/Linear-format-equations-and-Math-AutoCorrect-in-Word-2E00618D-B1FD-49D8-8CB4-8D17F25754F8) (see also Murray Sargent's [blog post](http://blogs.msdn.com/b/murrays/archive/2006/09/13/752206.aspx) and [paper](http://www.unicode.org/notes/tn28/UTN28-PlainTextMath-v2.pdf)) 68 | * [CoffeeTeX](https://github.com/kasperpeulen/CoffeeTeX) 69 | * [mathup](https://github.com/runarberg/mathup) asciimath-like to MathML 70 | * output: textual descriptions 71 | * [speech-rule-engine](https://github.com/zorkow/speech-rule-engine/) for MathML to textual descriptions 72 | * also part of the [MathJax Accessibility Extensions](https://docs.mathjax.org/en/latest/options/extensions/a11y-extensions.html#a11y-extensions). 73 | * [Aster](https://github.com/tvraman/aster-math) (for TeX documents) 74 | * output: Braille 75 | * [speech-rule-engine](https://github.com/zorkow/speech-rule-engine/): MathML to Nemeth 76 | * [MML2Nem](https://github.com/SusanJ/MML2Nem): MathML to Nemeth (and back [Baknem](https://github.com/SusanJ/Baknem)) 77 | * [mathml2braille](https://github.com/civodulab/mathml2braille) JS, converts MathML to fr, nemeth or ueb. 78 | * [mathml2asciimath](https://github.com/learningobjectsinc/mathml-to-asciimath) JS, converts a subset of MathML to asciimath 79 | * "Unicode authoring" 80 | * [tex-to-unicode browser extension](https://github.com/golopot/tex-to-unicode) (the underlying lib can be used separately) 81 | * [unicodeIt](https://github.com/svenkreiss/unicodeit) 82 | * little helpers 83 | * [Instant Preview for HTML textareas](http://checkmyworking.com/2012/06/instant-mathjax-preview-of-latex-typed-into-html-textareas/) (works with tinymce) 84 | * [TeX all the things](https://github.com/emichael/texthings), Chrome extension injecting MathJax 85 | * [mathml-block](https://github.com/adamsilverstein/mathml-block), "A MathML block for the WordPress block editor (Gutenberg)" (but really a 'mathjax block' since MathML is neither used as in- or output). 86 | * drawing, plotting etc. 87 | * [latex2js](https://github.com/pyramation/LaTeX2JS) pstricks+variables (cf. [mathapedia](http://www.mathapedia.com/) / latex2html]) 88 | * [unmaintained] [xyjax](https://sonoisa.github.io/xyjax/xyjax.html) 89 | * [mathbox](https://gitgud.io/unconed/mathbox) 90 | * [jsxgraph](https://github.com/jsxgraph/jsxgraph) (geometry) 91 | * [https://github.com/cytoscape/cytoscape.js](https://github.com/cytoscape/cytoscape.js) (graph theory) 92 | * [MathLib](https://github.com/alawatthe/MathLib) 93 | * [function-plot](https://github.com/maurizzzio/function-plot) "A 2d function plotter powered by D3" 94 | * [sigma.js](http://sigmajs.org/), "a JavaScript library dedicated to graph drawing. It makes easy to publish networks on Web pages, and allows developers to integrate network exploration in rich Web applications." 95 | * [pts](https://ptsjs.org/)"Pts enables you to compose and express what you see in your mind's eyes — points as ideas, shapes, colors, motions, interactions, and more." 96 | * [jsx-tikzcd](https://github.com/yishn/jsx-tikzcd) tikzcd diagrams with JSX. 97 | * [tikzcd-editor](https://github.com/yishn/tikzcd-editor) visual editor for tikzcd. 98 | * [tikzjax](https://github.com/kisonecat/tikzjax) TikZ running under WebAssembly in the browser 99 | * [Descartes](https://github.com/arguiot/Descartes), "A small plotting JavaScript library, made for TheoremJS" 100 | * [Penrose](https://penrose.cs.cmu.edu/), "Create beautiful diagrams, just by typing notation in plain text." 101 | * [EulerStudio](https://eulertour.com/) / [studio.js](https://github.com/eulertour/studio.js) "Beautiful visuals for education. Create precise animations, right from the browser." 102 | * document editors with strong math focus 103 | * [OERpub editor](http://oerpub.github.io/Aloha-Editor/) open source, Aloha-plugin, not quite wysiwyg, supported by OERpub, ConneXions and others. 104 | * [StackEdit](https://stackedit.io) In-browser Markdown Editor, with complete MathJax support. 105 | * OCR, handwriting recognition etc 106 | * [mathcha.io](https://www.mathcha.io/) " Online Mathematics Editor" (noteworthy for diagram support) 107 | * [Seshat](https://github.com/falvaro/seshat) Handwritten math expression parser 108 | * [MyScript Web Equation](http://webdemo.myscript.com/#/demo/equation), using handwriting recognition, LaTeX, MathML output as well as Desmos and Wolfram Alpha integration. The technology can be integrated into iOS and Android apps, see [1](https://itunes.apple.com/app/myscript-mathpad/id674996719), [2](https://itunes.apple.com/us/app/math-ink/id596393352). 109 | * fringe tools 110 | * [pseudocode.js](https://github.com/tatetian/pseudocode.js), a JS library similar to the TeX package [algorithms](https://ctan.org/pkg/algorithms), compatible with KaTeX and MathJax (both v2 and v3) 111 | * not-actually-web tools 112 | * [iosMath](https://github.com/kostub/iosMath) TeX equation renderer for iOS and MacOS. 113 | * [CSharpMath](https://github.com/verybadcat/CSharpMath) C# port of iosMath. 114 | * [iOSLaTeX](https://github.com/TeamSlader/iOSLaTeX), mathjax-based rendering for iOS apps. 115 | * [mathtype_to_mathml](https://github.com/jure/mathtype_to_mathml), METF to MathML convertor 116 | * content production tools 117 | * [mathtype (convertor)](https://github.com/jure/mathtype), ruby gem converting proprietary MathType binary equations into an XML form. 118 | * [math-api](https://github.com/chialab/math-api) REST API based on mathjax-node (serverless, AWS-ready) 119 | * [mathjax-server](https://github.com/tiarno/mathjax-server) simple server front-end for mathjax-node 120 | * [pb-mathjax](https://github.com/pressbooks/pb-mathjax), a replacement for https://wp.com/latex.php but instead of LaTeX, it uses MathJax. 121 | * iOS, Android development 122 | * [MathView](https://github.com/jianzhongli/MathView) third-party library for Android app development 123 | * LMS, Assessment etc 124 | * [Numbas](https://www.numbas.org.uk/) ([github](https://github.com/numbas/Numbas/)) Really versatile maths e-assessment. 125 | * [IMathAS](https://github.com/drlippman/IMathAS) An Internet Mathematics Assessment System. 126 | * [WeBWork](https://webwork.maa.org/wiki/WeBWorK_Main_Page) ([github](https://github.com/openwebwork)) 127 | * physical world 128 | * [paper plotter](https://felixboiii.github.io/paper-plotter/) 3D plots out of paper (take a function, generates PDF for stackable printout) 129 | --------------------------------------------------------------------------------