Open live app here
A snappy canvas / whiteboard application for throwing down notes, links, and ideas. Built with Svelte 5 and SvelteKit. Runs client side, so your data stays private. The data is stored within your browser's local storage and can be exported to .canvas plain text files.
- Infinite canvas with pan and zoom
- Text nodes with GitHub Flavored Markdown support
- URL Link nodes for bookmarks with URL context extraction
- File nodes for images, videos, audio, PDFs, and documents
- Group nodes for organising related content
- Edges to connect nodes with arrows and labels
- Alignment snapping for lining up nodes
- Inline hashtags with filtering and text search
- Multi-canvas tabs for separate workspaces
- Import/export in JSON Canvas format (compatible with Obsidian)
- ZIP export/import — bundles canvas data with all attached files
- HTML export — self-contained, interactive read-only files with pan/zoom, embeddable via iframe
- PDF export via browser print dialog
- Light/dark theme with toggle
- Keyboard shortcuts for efficient navigation
Files are stored locally in your browser using the Origin Private File System (OPFS). This is a browser-native storage API — no server or cloud service involved.
- Add files by dragging them onto the canvas, or via the toolbar/right-click menu
- Images and video render inline as previews; audio gets a player; other files show a download link
- Storage limits depend on the browser (~60GB Chrome, ~10GB Firefox, ~1GB Safari)
- Persistent Storage is requested automatically to reduce the chance of the browser clearing your data
- Export as ZIP to back up a canvas with all its files, or share it with someone else
- Runs entirely client-side — no server, no accounts, no tracking
- Data stored in your browser's IndexedDB and OPFS; never leaves your machine
- Markdown rendered with DOMPurify sanitization (strict tag/attribute allowlists)
- URI protocols restricted to https, http, mailto, tel — blocks javascript: and data: schemes
- Links open with
rel="noopener noreferrer"
MIT
Yes, vibe coded and quickly too. Enjoy.