WasmHub
Open-source WASM Hub of language runtimes
Kumar Anirudha
Table of content
Open-source WASM Hub of language runtimes. Download and manage versioned WebAssembly runtimes for Go, Rust, and more — usable as a Rust library, a CLI tool, or via CDN.
Why WasmHub?
- Multi-language — Go and Rust today; Node.js, Python, Ruby, PHP planned
- Smart caching — download once, use forever
- Type-safe library — Rust API with compile-time guarantees
- Multi-CDN fallback — GitHub Releases + jsDelivr with automatic failover
- SHA256 verification — every download is integrity-checked
- Cross-platform — Linux, macOS, Windows
Quick install
As a CLI:
cargo install wasmhub --features cli
wasmhub get go 1.23
As a library:
[dependencies]
wasmhub = "0.1"
tokio = { version = "1", features = ["full"] }
use wasmhub::{RuntimeLoader, Language};
#[tokio::main]
async fn main() -> wasmhub::Result<()> {
let loader = RuntimeLoader::new()?;
let go = loader.get_runtime(Language::Go, "1.23").await?;
println!("Runtime at: {}", go.path.display());
Ok(())
}
Where next
- Getting Started — install, first runtime, basic usage
- CLI Reference — every command and flag
- Library Guide — Rust API, builder config, feature flags
- Architecture — how runtimes flow from source to your cache
- Manifest Format — the JSON schema
- Adding a Runtime — contributor guide