Installation
This chapter covers installing and verifying Shape locally.
Prerequisites
Section titled “Prerequisites”- Rust toolchain (Rust 1.82+, Cargo included)
If Rust is not installed:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | shInstall from crates.io
Section titled “Install from crates.io”The recommended setup is to install both the CLI and the LSP:
cargo install shape-clicargo install shape-lspThis installs:
shape- CLI, runner, and REPL entrypointshape-lsp- language server for editor integration
Verify both binaries:
shape --versionshape-lsp --versionEditor integration
Section titled “Editor integration”The LSP is picked up automatically by editors with Shape support:
- VS Code — install the Shape Language extension. It auto-detects
shape-lspon your PATH and offers to install it if missing. - Neovim — see Editor Setup (Neovim)
- Mason (Neovim) —
:MasonInstall shape-lsp(pending registry PR)
Install from source
Section titled “Install from source”For development or the latest unreleased features:
git clone https://github.com/shape-lang/shapecd shapecargo build --workspace --releaseThe binary will be at target/release/shape.
The LSP binary will be at target/release/shape-lsp.
Extensions
Section titled “Extensions”Shape extensions add language runtime integrations (Python, TypeScript, etc.).
Install them with shape ext:
shape ext install pythonshape ext install typescriptThis downloads the extension crate from crates.io, compiles it for your platform,
and installs the shared library to ~/.shape/extensions/. Extensions are
automatically detected by both the CLI and LSP — no additional configuration needed.
Manage installed extensions:
shape ext list # show installed and available extensionsshape ext remove python # uninstall an extensionQuick test
Section titled “Quick test”Create hello.shape:
fn main() { print("hello from shape")}
main()Run it:
shape run hello.shapeExpected output:
hello from shapeOr test an expression directly:
let x = 10let y = 20print(x + y) // 30Next Steps
Section titled “Next Steps”Continue with Your First Program.