Skip to content

Installation and builds

Install the published Windows preview, or build ShellCanvas from source on Windows, macOS or Linux. This page covers both, and what each one gives you today.

Prerequisites

To install the release:

  • Windows on x64.
  • The Microsoft Edge WebView2 runtime, which Windows 11 includes. On older Windows it is often already present from another application; if ShellCanvas opens a blank window, install the runtime from Microsoft and start it again.
  • No Node.js, Rust or build tools. The installer contains everything the app needs.

To build from source, add:

  • Node.js 22 or newer and Rust 1.93 or newer.
  • The Tauri prerequisites for your platform, which include a C toolchain and, on Linux, the WebKitGTK development packages.
  • Several gigabytes of free disk space for dependencies and build output.

Steps

Install the Windows preview

  1. Open the latest release and download one of:

    • ShellCanvas_<version>_x64-setup.exe — the NSIS installer. It installs for your user account only and needs no administrator rights.
    • ShellCanvas_<version>_x64_en-US.msi — the Windows Installer package.
  2. Check the download against SHA256SUMS.txt, attached to the same release. In PowerShell:

    powershell
    Get-FileHash .\ShellCanvas_0.1.2_x64-setup.exe -Algorithm SHA256

    Compare the result with the matching line in SHA256SUMS.txt, which lists a lowercase hash and the file name for each installer.

  3. Run the installer. Preview builds are not code-signed, so Windows SmartScreen shows an unknown-publisher warning; choose More info → Run anyway if you are satisfied with the checksum you just compared.

  4. Start ShellCanvas from the Start menu.

Build and run from source

sh
git clone https://github.com/techartdev/ShellCanvas.git
cd ShellCanvas
npm ci
npm run desktop

npm run desktop builds the Rust core, starts the frontend dev server and opens the desktop with live reload. The first build compiles the whole Rust dependency tree and takes several minutes; later runs are much faster.

Useful variants:

CommandWhat it does
npm run devBrowser design preview at http://127.0.0.1:1420 with clearly labelled sample data. It cannot make SSH connections.
npm run tauri -- build --debug --no-bundleA debug executable with the frontend embedded, at target/debug/shellcanvas.exe on Windows.
npm run release:windowsOptimised build plus the NSIS and MSI installers.
npm run verifyFormatting, frontend tests, Rust tests and Clippy. Add -- --native to also build the desktop for your platform.

Build on macOS

npm run desktop works on current macOS once the Tauri prerequisites are installed. For an Intel Mac running Catalina 10.15, use the recorded path instead:

sh
sh scripts/build-macos-legacy.sh

That script produces an explicit debug build with a dependency-specific startup workaround. Launch, window layout and Settings have been confirmed with it on that machine; SSH workflows on the Mac client have not been validated.

Expected result

ShellCanvas opens on an empty local desktop with a dock at the bottom and Add host in the top right. No connection is made until you add one, and nothing leaves your computer before that.

From a source build, npm run desktop keeps a terminal attached: frontend changes reload immediately, and Rust changes trigger a rebuild and restart.

Limitations

  • Windows x64 only for released installers. There are no macOS or Linux packages yet, signed or unsigned.
  • No automatic updates. To move to a newer version, download and run the new installer. Saved hosts, preferences and installed apps stay in place.
  • Preview builds are unsigned, so SmartScreen warns, and some managed environments block them outright.
  • Debug and release builds share stored data on the same machine — saved hosts, preferences and installed apps — because they use the same application identifier. Running a development build against your everyday data is therefore not risk-free.
  • The browser preview is not the product. It renders the interface with sample data for design work and cannot connect to a server.

ShellCanvas documentation