FOR DEVELOPERS / RUNTIME 0.2.0

Built on the web.
At home on iOS.

Capsula installs your built web app into a native SwiftUI library and runs it in WebKit. Start with a static build and a manifest.

One portable package.

A .bin file is a ZIP archive containing manifest.json and a dist/ directory. The entry points to the app’s HTML file.

my-app.bin
├── manifest.json
└── dist/
    ├── index.html
    └── assets/

Build for the container.

Use relative asset paths. Package the interface and its assets together; browser storage can keep app data between launches.

Connect when needed.

Enable network permission and declare an HTTPS apiOrigin to access your backend through /api/*. External navigation is blocked.

The starting manifest.

{
  "schemaVersion": 1,
  "id": "com.example.myapp",
  "name": "My App",
  "version": "1.0.0",
  "entry": "dist/index.html",
  "minimumRuntimeVersion": "0.2.0",
  "permissions": {
    "network": false,
    "camera": false,
    "microphone": false
  }
}

Web first. WASM too.

Web packages run directly in WKWebView. WebAssembly packages can add a compiled module. Native executable packages are currently rejected.

Still an experiment.

Packages are currently unsigned: install packages from trusted developers. Camera and microphone fields are part of the manifest, but a native permission UI and notification bridge are not implemented.

Talk to Wolff Solutions ↗