npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@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

Main Dashboard

Workspace Detail

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

Context detail

Context-bound browser with real-time data sync Settings & Configuration

Installation (standalone)

Prerequisites

  • Node.js >= 22
  • pnpm (via corepack enable; the version is pinned in package.json)

Setup

  1. Clone this repository

    git clone https://github.com/canvas-ui/canvas-web
    cd canvas-web
  2. Install dependencies

    pnpm install
  3. Build 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 lint

Shared 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 (prebuilt dist/, no dependencies).
  • pnpm run release patch bumps the version and pushes; release.yml then publishes it to npm and creates the vX.Y.Z tag + 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 dev in 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:8001

Environment 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