A macOS menu bar utility for writing math and copying it as LaTeX or MathML.
- Visual math editor with MathLive -- type or use the virtual keyboard
- Copy as LaTeX or MathML with one click or keyboard shortcut
- Import LaTeX or MathML to edit visually -- auto-detects format and namespace prefixes
- MathML namespace prefix -- set a custom prefix like
m:ormml:for output - Expression history -- recent expressions saved for quick re-use
- Global shortcut --
Cmd+Shift+Msummons MacMath from any app - Light and dark mode -- follows system preference, with a manual toggle
- Launch at login -- option in the tray menu
- Text mode -- switch between math symbols and plain text input
You have two simple options:
-
Run it directly from Terminal with
npm startThis is the fastest option if you just want to use the app. -
Build a local
.dmgon your own Mac This is the better option if you want to drag MacMath into Applications and launch it like a normal app.
You do not need an Apple Developer account for either of these local options.
You need:
- A Mac
- Node.js 18 or newer
- The MacMath source code folder on your machine
If you do not already have the project folder:
- Go to the GitHub repository page.
- Click Code.
- Click Download ZIP.
- Open the downloaded ZIP and extract it.
- Move the extracted
MacMathfolder somewhere easy to find, like your Desktop or Downloads folder.
- Open the Terminal app on your Mac.
- Type
cdincluding the space aftercd. - Drag the
MacMathfolder into the Terminal window. Terminal will paste the full folder path for you. - Press
Return.
Example:
cd /Users/yourname/Downloads/MacMathRun this once before using the app:
npm installThis may take a minute or two the first time.
Use this if you want the quickest path and do not care about installing MacMath into Applications.
Run:
npm startWhat happens next:
- MacMath starts running.
- Its icon appears in your menu bar.
- Click the menu bar icon to open the editor.
Important notes:
- Leave the Terminal window open while MacMath is running.
- To quit the app, close it from the menu bar or press
Control + Cin Terminal. - If you update the project later, run
npm installagain before launching.
Use this if you want MacMath to behave more like a normal installed app.
Run:
npm run buildWhat this does:
- Builds the app locally on your Mac
- Creates a
distfolder inside the project - Puts a
.dmgfile there
When the build finishes:
- Open the
MacMathproject folder in Finder. - Open the
distfolder. - Double-click the generated
.dmgfile. - Drag MacMath into Applications.
- Open Applications and launch MacMath.
If you ever want to rebuild it after updating the code, run npm run build again.
- Choose
npm startif you want the fastest setup and are okay running it from Terminal. - Choose
npm run buildif you want a local.dmgand an app you can keep in Applications.
- Click the menu bar icon (or press
Cmd+Shift+M) to open the editor - Type a math expression -- it renders live
- Press
Cmd+Enterto copy LaTeX, orCmd+Shift+Enterfor MathML - Paste into your document
To import an existing expression, click Import and paste LaTeX or MathML. The format is detected automatically, including namespace-prefixed MathML like <m:math>.
| Shortcut | Action |
|---|---|
Cmd+Shift+M |
Toggle popover (works globally) |
Cmd+Enter |
Copy LaTeX |
Cmd+Shift+Enter |
Copy MathML |
Cmd+Z |
Undo |
npm install
npm start
npm run build
npm run build:dirnpm installinstalls the required packagesnpm startruns the app directlynpm run buildcreates a local.dmgnpm run build:dircreates the.appbundle without building the.dmg
MIT
