Downloads

Where to get the CLI, the crates and the editor packages. What changed in each version is on the other tab.

Go to your system: Windows | Linux | macOS

Wisp is a pre-release: it installs from source with cargo today. The version, the tag and the archive names below come from the changelog and the release page, so they change with a release.

The wisp command builds a C library (ring), so every system needs Rust 1.89 or later and a C compiler and linker.


Windows

PrerequisitesRust, from rustup-init.exe. Rust on Windows links with the Microsoft C++ build tools by default. Install Build Tools for Visual Studio with the workload Desktop development with C++ (MSVC and a Windows SDK). Or use the GNU toolchain: put MinGW-w64 (for example from MSYS2) on your PATH. Then switch with rustup default stable-x86_64-pc-windows-gnu.
InstallWorks now. Build it from source with cargo. It takes a few minutes. The newest tag is v1.0.0-pre.3. The command pins it.
cargo install --git https://wisp.ar0.eu/ --tag v1.0.0-pre.3 wisp-web
Verify
wisp --version
Create and run
wisp new my-app
cd my-app
wisp dev
wisp dev serves http://127.0.0.1:3000.
Update
wisp upgrade
It installs the newest release and sets the tag of an app's Wisp dependencies (from 1.0.0-pre.3). wisp changelog prints what changed since your version. Windows cannot replace a running wisp.exe ("Access is denied"). Stop wisp dev and wisp lsp first. Or rename the file with ren %USERPROFILE%\.cargo\bin\wisp.exe wisp-old.exe, and delete the old file later.
Uninstall
cargo uninstall wisp-web
EditorInstall wisp first, then pick your editor in Editors (VS Code builds from a clone).
Prebuilt archive

Attached to v1.0.0-pre.3. wisp-x86_64-pc-windows-gnu.zip and its .sha256. Unpack it and put wisp.exe on your PATH.

Not yet. scripts/install.ps1 is in the repository, but wispweb.dev does not serve it at wispweb.dev/install.ps1. The script gets the archive from the GitHub releases of wyziedevs/wisp, not from code.wispweb.dev.

Linux

PrerequisitesRust, from rustup. A C compiler and linker: build-essential on Debian and Ubuntu (sudo apt install build-essential curl), gcc on Fedora (sudo dnf install gcc), or your distribution's equivalent.
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
InstallWorks now. Build it from source with cargo. It takes a few minutes. The newest tag is v1.0.0-pre.3. The command pins it.
cargo install --git https://wisp.ar0.eu/ --tag v1.0.0-pre.3 wisp-web
Verify
wisp --version
Create and run
wisp new my-app
cd my-app
wisp dev
wisp dev serves http://127.0.0.1:3000.
Update
wisp upgrade
It installs the newest release and sets the tag of an app's Wisp dependencies (from 1.0.0-pre.3). wisp changelog prints what changed since your version.
Uninstall
cargo uninstall wisp-web
EditorInstall wisp first, then pick your editor in Editors.
Prebuilt archive

Attached to v1.0.0-pre.3. wisp-x86_64-unknown-linux-musl.tar.gz and its .sha256.

Attached to v1.0.0-pre.3. wisp-aarch64-unknown-linux-musl.tar.gz and its .sha256.

Not yet. scripts/install.sh is in the repository, but wispweb.dev does not serve it at wispweb.dev/install. The script gets the archive from the GitHub releases of wyziedevs/wisp, not from code.wispweb.dev.

macOS

PrerequisitesRust, from rustup. The C compiler and linker come with the Xcode Command Line Tools.
xcode-select --install
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
InstallWorks now. Build it from source with cargo. It takes a few minutes. The newest tag is v1.0.0-pre.3. The command pins it.
cargo install --git https://wisp.ar0.eu/ --tag v1.0.0-pre.3 wisp-web
Verify
wisp --version
Create and run
wisp new my-app
cd my-app
wisp dev
wisp dev serves http://127.0.0.1:3000.
Update
wisp upgrade
It installs the newest release and sets the tag of an app's Wisp dependencies (from 1.0.0-pre.3). wisp changelog prints what changed since your version.
Uninstall
cargo uninstall wisp-web
EditorInstall wisp first, then pick your editor in Editors.
Prebuilt archive

Attached to v1.0.0-pre.3. wisp-x86_64-apple-darwin.tar.gz and its .sha256.

Attached to v1.0.0-pre.3. wisp-aarch64-apple-darwin.tar.gz and its .sha256.

Not yet. scripts/install.sh is in the repository, but wispweb.dev does not serve it at wispweb.dev/install. The script gets the archive from the GitHub releases of wyziedevs/wisp, not from code.wispweb.dev.

Other install routes

Each archive of a release has a .sha256, and the release has one SHA256SUMS. See RELEASING.md.

StateWhat
Not yetcargo binstall wisp-web reads the prebuilt archives, so it works once they exist.
Not yetHomebrew, Scoop, winget. Draft manifests are in packaging/, unpublished.

Crates

Not on crates.io. They publish with the 1.0 release. Until then an app depends on this repository by git. When wisp comes from cargo install --git, wisp new writes lines like these, with the tag of its own version. When it comes from cargo install --path, wisp new writes path lines to that clone.

CrateWhat
wisp-webthe wisp command (crates/wisp-cli)
wisp-web-rtthe runtime an app depends on, lib name wisp
wisp-web-buildbuild.rs codegen, lib name wisp_build
wisp-web-macrosderives and attributes
wisp-web-sharedrules shared by build and runtime
wisp = { git = "https://wisp.ar0.eu/", tag = "v1.0.0-pre.3", package = "wisp-web-rt" }
wisp-build = { git = "https://wisp.ar0.eu/", tag = "v1.0.0-pre.3", package = "wisp-web-build" }

Editors

Every editor uses wisp lsp (problems, hovers, completion, formatting), so install the command first. No editor package is in a store or registry yet: each installs from a clone of the repository, folder editors/. Editors has the detail.

git clone https://code.wispweb.dev/wispdev/wisp.git
StateEditor
From sourceVS Code: build the extension and install the file. It is not on the Marketplace or Open VSX yet.
cd wisp/editors/vscode
npm install
npx @vscode/vsce package --skip-license --out wisp.vsix
code --install-extension wisp.vsix
From sourceNeovim: add editors/nvim to the runtime path (a lazy.nvim snippet is in its README), then :TSInstall wisp rust javascript typescript css.
From sourceHelix: merge editors/helix/languages.toml, run hx --grammar fetch and hx --grammar build, then copy the queries (steps).
From sourceZed: run zed: install dev extension and pick editors/zed.
From sourceSublime Text: copy editors/sublime into a Wisp package folder and install the LSP package.
From sourceJetBrains: install LSP4IJ from the plugin marketplace, then import editors/jetbrains/lsp4ij-template.
From sourceEmacs: add editors/emacs to load-path, require wisp-ts-mode, then install the grammar with treesit-install-language-grammar.
From sourcetree-sitter grammar: editors/tree-sitter-wisp, the parser behind Neovim, Helix, Zed and Emacs.
Not publishedPrettier plugin: editors/prettier-plugin-wisp is not on NPM yet, so npm install prettier-plugin-wisp does not work. It only runs wisp fmt --stdin, so use wisp fmt directly.

Source and release pages

The source and the release pages are at code.wispweb.dev/wispdev/wisp, a self-hosted git server, because GitHub suspended our account. Accounts there are closed for now.

All releases | Quick Start

Newest tag: v1.0.0-pre.3Source: CHANGELOG.md