- Markdown format commands shared by Ctrl+B/I/K and a toolbar above the
soft keyboard on touch devices; bold and italic stack correctly
- Fit the app to the visual viewport so the keyboard does not cover the
caret or the toolbar
- Insert images from the photo library or a file picker
- Move notes and folders with a folder picker from the file tree menu or
the command palette
- Open the file tree menu with a long press on touch devices
- Bind Mod-Shift-z to redo on all platforms (CodeMirror only binds it on Linux/macOS)
- Render tables based on editor focus so a note starting with a table is not shown as source
- Send the save request without waiting for the IndexedDB draft write, and flush on pagehide;
Firefox could drop the last edit when a tab was closed right after typing
- Fall back to clipboardData.items when pasting images with an empty files list
- Login and first-run setup screens
- File tree with inline create/rename, context menu, drag-and-drop
move and trash with undo; all operations update the UI first and roll
back on failure
- Tabs keep a CodeMirror state each; edits autosave after 500 ms with
If-Match revisions, unsent edits persist in IndexedDB, and conflicts
or remote deletions surface as banners with explicit choices
- WebSocket events sync external edits, moves and deletions into open
tabs; reconnects trigger a full resync
- Pasted or dropped images show instantly and upload to note.assets/
- Responsive layout with a swipe-in sidebar drawer on phones
- Switch to TypeScript 6: vue-tsc does not support TypeScript 7 yet