@augmentd-labs/canvas-web
v2.26.2
Published
Canvas web UI (prebuilt dist)
Readme
Canvas web frontend
- Bundled with Canvas Server
- For standalone deployment, see the installation section below
Backend Trash
The backends tree includes Trash → backend → original path for file backends. Right-click a deleted file or folder and choose Restore file or Restore folder to put it back at its original location. Multiple selections can be restored together. Existing destinations are preserved; conflicting items stay in Trash. Whole deleted folders restore their contents, including empty folders. The server retention setting controls expiry (30 days by default). This requires the matching server/runtime and canvas-stored Trash support; it is separate from canvas-fuse's local mirror trash.
Use Delete permanently in a Trash item's context menu, Delete selected for a selection, or Empty Trash for a backend. Inside an original-path folder, Empty this folder affects only that subtree. Each action confirms the count and paths before deletion. Live files at the original paths are preserved; shared recovery bytes remain while another Trash item or retained version needs them. Failed items stay listed so deletion can be retried.
Apps (applets)
The Toolbox has a top-level Apps tab hosting small self-contained applets
(src/components/toolbox/applets/). Each applet declares which modes it
supports (context and/or global) and renders free of page-level assumptions,
so the same component can be reused by other frontends (desktop overlay, tauri).
- Notes — every note in the focused context stacked as one editable, searchable document view with debounced autosave and inline add.
- Todos — the same stacked view with status checkboxes, due dates, and completed items hidden behind an eye toggle.
- Per item: Link To (file into any workspace/path) and Delete.
Applets also run standalone, outside the app shell, at /apps/<id> — the data
binding lives in the URL (?workspace=&path= or ?context=<id>, add=1 opens
the inline draft). /apps/add/<kind> (note|todo|link|file|photo) is a chrome-free
quick-add card, and the PWA manifest exposes shortcuts for Add Photo / Add File / Add Note / Add Todo.
Data management
- Import / export documents — the document toolbar exports the selected (or all) documents as JSON and imports pasted JSON, in both workspace and context detail views.
- Drag and drop — tree layers and documents are draggable: drop documents onto tree paths, copy/move layers between paths (modifier keys switch mode), and transfer between side-by-side workspace panes (F5 copy, F6 move).
- Context sharing — contexts can be shared with other users by email with per-user access levels, managed from the context settings page.
Screenshots
Workspace Management

Workspace Detail
Workspace connected to a browser running canvas-browser-extension

Context detail
Context-bound browser with real-time data sync

Installation (standalone)
Prerequisites
- Node.js >= 22
- pnpm (via
corepack enable; the version is pinned inpackage.json)
Setup
Clone this repository
git clone https://github.com/canvas-ui/canvas-web cd canvas-webInstall dependencies
pnpm installBuild the web frontend
pnpm run build
Development
# Start development server
pnpm run dev
# Build for production
pnpm run build
# Preview production build
pnpm run preview
# Lint code
pnpm run lintShared packages and releases
@augmentd-labs/canvas-{protocol,api-client,wallpapers} are npm packages
published from canvas-common;
pnpm update @augmentd-labs/canvas-protocol (etc.) picks up a new release.
- canvas-server serves the UI from the npm package
@augmentd-labs/canvas-web(prebuiltdist/, no dependencies). pnpm run release patchbumps the version and pushes; release.yml then publishes it to npm and creates thevX.Y.Ztag + GitHub Release.- The latest prebuilt tarball and checksums have stable URLs. Versioned tarball filenames remain available for pinned downloads.
- To develop the server against a local build, point it at this checkout:
CANVAS_WEB_ROOT=../canvas-web/dist npm run devin canvas-server.
Configuration
Remote Access
# Copy environment template
cp .env.example .env
# Update Canvas Server API URL for remote access
VITE_API_URL=http://your-server:8001Environment Variables
| Variable | Default |
|----------|---------|
| VITE_API_URL | http://localhost:8001 |
| CANVAS_API_PORT | 8001 |
| CANVAS_API_HOST | 0.0.0.0 |
| CANVAS_API_PROTOCOL | http |
Licence
Copyright (C) 2025-2026 Jozef Melich. Canvas Web UI is dual-licensed:
- AGPL-3.0-or-later, free for everyone. Run it, modify it, build on it. If you distribute a modified version, or expose one to users over a network, they are entitled to your changes (AGPL section 13).
- Commercial licence, the same code without the copyleft obligations, for hosted products and proprietary distribution. Issued by Augmentd s.r.o., [email protected].
Same software either way. There is no cut-down community edition. See NOTICE for the full position, and CONTRIBUTING.md before opening a pull request.
This project is funded by Augmentd Labs
