MoonBit application SDK and host toolchain for supported embedded devices and the Web host.
Dependencies
| Package | Contents |
|---|---|
| core | Point, Size, Rect, Color (RGB565 conversion), LOGICAL_WIDTH = 240, LOGICAL_HEIGHT = 320 |
| graphics | Queryable DisplayInfo, full-size Canvas drawing, SpriteSheet, text metrics, read-only FrameView, optional backlight control |
| input | Semantic Button (Up / Down / Ok), ButtonEvent (Press / Click / DoubleClick / LongPress), edge-detecting InputState |
| audio | Typed Sound resources, opaque Playback instances and portable playback controls; microphone PCM16 capture and drop telemetry |
| power | Application-requested sleep and reported wake cause |
| battery | BatterySource trait and caching Battery; readings are Int? so unavailable values are explicit |
| driver | Backend-facing Clock and DisplaySink contracts, plus test fixtures (ZeroClock, SinkProbe) |
| hostabi | Internal, experimental wasm host boundary: ABI v0 constants, the closure-injected HostBridge (DisplaySink / BatterySource / Clock adapters), wasm-gated passport.* externs, and inline-WAT u16 store/load helpers |
moon build --target wasm --release # fixture app.wasm, release profile
moon build --target wasm # fixture app.wasm, debug profile (the suite pins both)
node hosts/web/test/run-tests.mjs # integration suites; exits 2 if fixture artifacts are missingentry = "app"
[[sounds]]
name = "jump"
source = "assets/jump.pcm"moon run --target wasm src/cmd/passport hosts
moon run --target wasm src/cmd/passport generate-sounds <input> <output>
moon run --target wasm src/cmd/passport build --host web --project <app-dir>
moon run --target wasm src/cmd/passport build --host folotoy-ai-passport --project <app-dir>
moon run --target wasm src/cmd/passport dev --host web --project <app-dir>Install
Download zipMoonBit application SDK and host toolchain for supported embedded devices and the Web host.
Dependencies