Install Amalgame
Try it instantly with the ready-to-use Docker IDE, or install the amc compiler natively for your system.
Latest stable version: v0.8.90 (see all releases)
🐳 Docker — the full IDE, zero install
The quickest way to try Amalgame: one command boots a browser VS Code with the compiler, the extension (syntax highlighting, LSP, debugger), a ready-to-run sample and the docs — all pre-wired, nothing to set up.
docker run --rm -p 8080:8080 ghcr.io/amalgame-lang/amalgame-ide:latest
Then open localhost:8080 — you land on the MyFirstApp sample with the user guide pinned in the sidebar; press F5 to build and debug it on the spot.
- Port already in use? Map any free host port, e.g.
-p 8888:8080, then openlocalhost:8888. - Multi-arch: runs natively on Intel/AMD (
amd64) and on Apple Silicon / Raspberry Pi 64-bit (arm64). - Persist your work: mount a folder, e.g.
-v "$PWD/work:/home/coder/work". - Exposing it beyond localhost? Set
-e PASSWORD=…(auth is disabled by default for local use).
Pre-built binary
The fastest native install. Download the archive matching your OS, extract, and place amc in your PATH.
🐧 Linux
- amc-0.8.74-linux-arm64.tar.gz (752 KB)
- amc-0.8.74-linux-x86_64.tar.gz (951 KB)
🍎 macOS
- amc-0.8.74-macos-arm64.tar.gz (1.1 MB)
🪟 Windows
- amc-0.8.74-windows-x86_64.zip (1.3 MB)
🥧 Raspberry Pi (ARM64)
On a Raspberry Pi running a 64-bit OS (uname -m → aarch64), the one-liner installs the native linux-arm64 build. 32-bit (armv7l/armv6l) isn't supported — reflash a 64-bit OS.
sudo apt install -y build-essential libgc-dev libssl-dev curl curl -fsSL https://raw.githubusercontent.com/amalgame-lang/Amalgame/main/install/install.sh | sh amc --version
🥧 New to the Pi? The Raspberry Pi how-to guide walks you from a blank SD card to blinking an LED, reading a button, and talking to I²C sensors — step by step.
Build from source
If you want to bootstrap yourself or if no binary is available for your OS.
Linux
sudo apt install gcc libgc-dev libcurl4-openssl-dev git clone https://github.com/amalgame-lang/Amalgame.git && cd Amalgame gcc -O2 -Iruntime snapshot/amc_lib.c -lgc -lm -lcurl -o snapshot/amc ./build_amc.sh ./amc --version
macOS
brew install bdw-gc curl
git clone https://github.com/amalgame-lang/Amalgame.git && cd Amalgame
GC_PREFIX=$(brew --prefix bdw-gc)
CURL_PREFIX=$(brew --prefix curl)
gcc -O2 -Iruntime -I"$GC_PREFIX/include" -I"$CURL_PREFIX/include" \
-L"$GC_PREFIX/lib" -L"$CURL_PREFIX/lib" \
snapshot/amc_lib.c -lgc -lm -lcurl -o amc
./amc --version
Windows (MSYS2 MINGW64)
pacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-gc mingw-w64-x86_64-curl git clone https://github.com/amalgame-lang/Amalgame.git && cd Amalgame gcc -O2 -Iruntime snapshot/amc_lib.c -lgc -lm -lcurl -lws2_32 -o amc.exe ./amc.exe --version
Install Mosaic (the web framework)
Mosaic is Amalgame's web framework — one binary, N sites, automatic HTTPS/ACME, sessions, auth (Basic/JWT), reverse proxy. Once amc is in place it installs as a set of packages.
amc package add web net-http tls # framework + HTTP/1.1 + TLS amc package add net-proxy # (optional) reverse proxy
A minimal server:
import Amalgame.Web
WebApp.New()
.Get("/", ctx => HttpResponse.New().Html("<h1>Hello Mosaic</h1>"))
.ServeHttps(443, "/etc/ssl/cert.pem", "/etc/ssl/key.pem")
Full reference (auth, sessions, CORS/CSRF, rate-limit, static files, TLS/ACME, reverse proxy): the Mosaic docs and the configuration reference.
Install Pollen (the workflow bus)
Pollen is Amalgame's decentralized P2P workflow engine — a TCP/UDP message bus that runs distributed automation across machines, with a visual workflow editor. It installs from source:
curl -sSL https://raw.githubusercontent.com/amalgame-lang/pollen/main/install.sh | bash
More in the Pollen repository.
What next?
Verify the installation with amc --version, then follow the tour to discover the language.