A simple Bourne-like shell, compatible with Wasm. Written in Go.
Install like any other go library:
go install github.com/hack-pad/hush/cmd/hush@latest
Alternatively, import hush
in your own projects:
package main
import (
"os"
"github.com/hack-pad/hush"
)
func main() {
exitCode := hush.Run()
os.Exit(exitCode)
}
Today, Go's Web Assembly support does not include running processes.
To make this possible, Hush is built with hackpad's go
fork. The fork contains patches that spawn and manage processes using Node.js's APIs, similar to the Node.js file system API used upstream.