A minimal, fast, single-purpose mind mapping tool. Vanilla TypeScript + SVG, no framework, no backend.
- Root node with unlimited children/grandchildren
- Add child (
Tab), add sibling (Enter), delete (Delete/Backspace) - Double-click (or
F2) to edit a node's text inline - Drag nodes to reposition, drag the background to pan, scroll/pinch or +/- to zoom
- Auto-saves to
localStorageas you work - Export the current map to a
.jsonfile, import it back later (or on another device)
Requires Node.js 18+.
npm install
npm run devThis opens the app at http://localhost:5173 with hot reload.
npm run buildOutputs a static site to dist/ — pure HTML/CSS/JS, deployable anywhere.
This repo includes .github/workflows/deploy.yml, which builds and deploys automatically on every push to main.
One-time setup after pushing this repo to GitHub:
- Go to your repo's Settings → Pages.
- Under Build and deployment → Source, select GitHub Actions.
- Push to
main(or re-run the workflow from the Actions tab). - Your site will be live at
https://<your-username>.github.io/<repo-name>/.
No further configuration needed — vite.config.ts uses a relative base path so it works under any repo subpath automatically.
Everything lives in your browser's localStorage on the device you use it on — nothing is sent anywhere. Use Export periodically if you want a backup or want to move a map to another browser/device, then Import it there.