MindNote is a modern desktop application that seamlessly combines mind mapping with Markdown note-taking. It allows you to organize your thoughts visually and elaborate on them with rich text content, all in one integrated environment.
- Visual Mind Mapping: Create and organize nodes in an infinite canvas using Vue Flow.
- Integrated Markdown Editor: Edit node content with a powerful Markdown editor powered by Toast UI Editor.
- WebDAV Integration: Connect to WebDAV servers to browse, open, and manage (create folders, rename, delete) your remote mindmap files.
- Mathematical Formulas: Complete support for LaTeX mathematical expressions in the editor using KaTeX.
- Search and Replace: Robust search and replace functionality within the markdown editor.
- Freemind Import: Seamlessly import legacy
.mmfiles, automatically converting rich HTML content to Markdown. - File Management: Save your work as
.mnfiles (custom archive format) containing your mindmap structure, markdown content, and images. - Rich Media Support: Drag and drop images directly onto nodes or into the editor.
- Customizable Themes:
- Built-in Light and Dark modes (syncs with system settings).
- Customizable node styles (colors, borders, shapes).
- Customizable connection lines and background patterns.
- Keyboard Shortcuts:
Tab: Add child node.Enter: Add sibling node.Delete/Backspace: Delete selected node(s).Ctrl+N: New file.Ctrl+O: Open file.Ctrl+S: Save file.Ctrl+Shift+S: Save As.Ctrl+Z/Ctrl+Y: Undo / Redo.
- Core: Electron, Vue 3, TypeScript
- Build Tool: Vite
- State Management: Pinia
- UI Framework: Element Plus
- Mindmap Library: Vue Flow
- Editor: Toast UI Editor
- Styling: SCSS
- Node.js (v16 or higher recommended)
- npm
-
Clone the repository:
git clone https://github.com/18thCentury/MindNote.git cd MindNote -
Install dependencies:
npm install
To start the development server with hot reload:
# Terminal 1: Build Vue renderer (watch mode not enabled by default in this script, run manually if needed)
npm run vue
# Terminal 2: Start Electron
npm run devNote: The current npm run dev script compiles the main process and starts Electron. You may need to rebuild the renderer (npm run vue) if you make changes to Vue files.
To build the application for production (Windows):
npm run buildThis command will:
- Build the Vue renderer (
npm run build:renderer). - Compile the Electron main process and package the application (
npm run build:electron).
The output installer/executable will be in the release directory.