What's New in v4.0.0
Added
- Versioned v4 document schema with layers, IndexedDB persistence, and validated JSON backups
- Five built-in editable templates and reusable custom templates
- Full-document JPEG export and content-bound PNG, PDF, and SVG exports
- Playwright coverage for critical drawing, erasing, template, import/export, persistence, and responsive workflows
- Sandboxed Electron desktop entry and Linux AppImage packaging
Changed
- First launch now opens a blank, immediately usable document
- Resizing between desktop and mobile preserves the visible canvas center
- JSON import creates a separate editable document and accepts v4, v3, and supported legacy data
- The primary workspace and shortcut interfaces now use consistent Chinese labels
- PWA updates activate through the normal service-worker lifecycle without a reload banner
Fixed
- Replaced unstable simulated erasing with deterministic geometric partial-stroke erasing
- Eraser gestures now create one coherent undo operation
- Templates receive fresh IDs, remain selectable, and can be edited after insertion
- Export output no longer clips content outside the current viewport
- Product branding remains visible in the mobile toolbar
- Electron no longer enables Node.js integration or exposes the removed screen-pen overlay
Removed
- Physics, particle, audio, wear, and preset behavior from the active eraser workflow
- Misleading Word export
- Experimental screen-pen and update-banner interfaces
Install
Download the attached Linux AppImage:
chmod +x ./*.AppImage
./*.AppImageThe mindnotes-pro-v4.0.0.tar.gz archive contains the production web build for static hosting. You can also use the Live App.
Before upgrading
Export a JSON backup before clearing browser site data or changing devices. Browser documents remain local to the current origin. The previous mindnotes-drawing-data document is migrated only during the first v4 startup when the v4 document store is empty and migration succeeds, before a new v4 document is created. If automatic migration cannot occur, export the old data as JSON when possible and use the supported import path; imports create a separate editable document.