Skip to content

Releases: ibrahimbisen/Velm

Release list

Velm 1.0.0

Choose a tag to compare

@ibrahimbisen ibrahimbisen released this 11 Aug 21:47

The first release of Velm — a native infinite-canvas board app, and a Miro alternative
written in Rust.

Install

  1. Download Velm-1.0.0-macos-arm64.dmg below.

  2. Open it and drag Velm into Applications.

  3. The first launch needs one extra step. Velm is ad-hoc signed and not notarized
    notarization needs a paid Apple Developer account — so macOS will refuse to open it
    once, saying it cannot check it for malicious software. Either:

    • open System Settings ▸ Privacy & Security, scroll down, and click Open Anyway; or
    • run xattr -dr com.apple.quarantine /Applications/Velm.app

    You only do this once.

Apple Silicon only. Intel Macs need to build from source — see the README.

Your boards live in ~/Library/Application Support/Vellum/. There is no account, no sync,
and nothing is sent anywhere.

Measured against Miro, on the same machine

Miro Velm
Install size 295.7 MB 18.5 MB 16× smaller
Memory, board open 357 MB 104 MB 3.4× less
Processes 14 1

And on its own: a 596-item board with every item on screen at 100 fps, and a
100,000-item board at 100 fps with 233 items in view — because frame cost scales with
what is drawn, not with what exists.

No frame-rate multiple over Miro is claimed; there is no honest way to measure theirs.

What's in it

Boards in tabs and folders, cross-board search, a pen and eraser, 41 shapes, connectors
that re-route, sticky notes and text edited on the canvas, tables, kanban boards,
self-laying-out mind maps, charts, link cards that fetch their own previews, relative
snapping with alignment guides, and export to PNG, PDF, SVG and CSV.

Import from Miro brings a board across with its stickies, text, frames, images, link
cards and your pen drawings — which no Miro API exposes at all. On the reference board,
596 of 596 widgets import, 532 of them losslessly.

Deliberately absent: real-time collaboration, dark mode, and playable embeds. The README
says why.