-
Notifications
You must be signed in to change notification settings - Fork 3
Home
Wasmrun is a powerful WebAssembly runtime that simplifies development, compilation, and deployment of WebAssembly applications across multiple programming languages.
Wasmrun provides a unified interface for building and running WebAssembly (WASM) projects from various source languages including Rust, Go, C/C++, AssemblyScript, and Python. It eliminates the complexity of managing different toolchains and provides a seamless development experience with built-in live reload, optimization, and deployment capabilities.
- 🚀 Multi-Language Support - Build WebAssembly from Rust, Go, C/C++, AssemblyScript, and Python
- 🔌 Plugin Architecture - Extensible system with built-in and external plugins
- 🔥 Live Reload - Instant development feedback with file watching
- 🌐 Zero-Config Web Server - Built-in HTTP server with WASM and web app hosting
- 📦 Smart Project Detection - Automatically detects and configures project types
- ⚡ Zero Configuration - Works out of the box with sensible defaults
Wasmrun uses a modular plugin architecture that enables seamless integration of different programming languages:
- C/C++ - Full WASM + Web Apps via Emscripten
- AssemblyScript - TypeScript-like syntax with optimization
- Python - Runtime integration with bundle creation (Beta)
External plugins are installed to ~/.wasmrun/ and loaded dynamically at runtime.
-
wasmrun run <project>- Start development server with live reload -
wasmrun compile <project>- Compile project to WebAssembly -
wasmrun <file.wasm>- Run WebAssembly file directly
-
wasmrun clean <project>- Clean build artifacts -
wasmrun verify <file.wasm>- Verify WASM file format -
wasmrun inspect <file.wasm>- Detailed WASM analysis
-
wasmrun plugin list- List available plugins -
wasmrun plugin install <plugin>- Install external plugins -
wasmrun plugin info <plugin>- Plugin information
-
wasmrun stop- Stop running server instances
Wasmrun automatically detects project types based on:
- File extensions (
.rs,.go,.c,.cpp,.py,.ts) - Configuration files (
Cargo.toml,go.mod,Makefile,package.json) - Entry point files (
main.rs,main.go,main.c,main.py)
-
Create or navigate to your project
cd my-wasm-project -
Start development server
wasmrun run . --watch -
Compile for production
wasmrun compile . --optimization release -
Deploy the generated WASM files
cargo install wasmrun# Run current directory
wasmrun
# Run with live reload
wasmrun run . --watch
# Install language support
wasmrun plugin install wasmrust
wasmrun plugin install wasmgo