field-notes.mziOFFLINE RECORDS
Field Notes
Create and keep local records. Open the same package in a compatible browser or native host.
Local state · collectionsRun Field NotesPackage WebAssembly logic, an adaptive interface and explicit permissions into one .mzi file. A compatible host takes care of the system around it.
Open the working examples without an account. Native releases and mobile previews have different capability support.
A place for the things you observe.
Web In your browser
Windows & Linux Native downloads
macOS, Android & iOS Host previews
LESS THEORY. OPEN A PACKAGE.
field-notes.mziOFFLINE RECORDS
Create and keep local records. Open the same package in a compatible browser or native host.
Local state · collectionsRun Field Notescapability-clock.mziHOST CAPABILITIES
Watch a WebAssembly Component request wall time through an explicitly approved host import.
Clock · session stateRun Capability Clockcapability-http.mziBOUNDED NETWORK ACCESS
Let the host perform an approved HTTP task. The application never receives direct browser APIs.
Network · task completionRun HTTP proofTHE PACKAGE TRAVELS. THE HOST ADAPTS.
MZI describes what an application does and the interface it needs. The host renders the controls, owns local state and grants the capabilities the package is allowed to use.
How the model worksmanifest.tomlIdentity & permissionsapp.wasmApplication logicinterface.mzi.jsonSemantic interfacedata.schema.jsonLocal data contractSIGNATUREPublisher & integrityA CLEAR BOUNDARY AT EVERY STEP
Portable does not mean unrestricted. The host stays in control of the device and its data.
Bundle logic, interface and state schema. Sign the package so a host can check its identity and integrity.
The host checks what the package declares. You review and approve the authority needed to run it.
The host renders the interface and executes Wasm in isolation. Available capabilities depend on that host.
FOR DEVELOPERS
Start with AssemblyScript, build a portable application and use the CLI to validate each change. Install a compatible native host before using --launch.
# Get the standalone CLI
curl -fsS https://mzi.app/downloads/mzi-cli.mjs -o mzi.mjs
# Create a typed application
node mzi.mjs init hello-mzi --language assemblyscript
cd hello-mzi && npm install
# Build and open in an installed host
node ../mzi.mjs dev . --launchBUILT IN THE OPEN
MZI is still a developer preview. Signing, local state and capability proofs are available today; host support and production distribution continue to evolve. Check the current implementation before choosing a target.
START WITH THE ARTIFACT
Try the signed Field Notes package in your browser.
Launch Browser Host