System bars & deep links
Optional waid.config.json blocks that tune how your app sits on the screen and how
it responds to links.
systemBars: status & navigation bars (Android)#
Your app runs edge-to-edge and its content is inset into the safe area (like Flutter's
SafeArea). Tune the bars with systemBars:
json
"systemBars": { "mode": "edge-to-edge", "appearance": "light", "statusBarColor": "#0a1410"}| Key | Values | What it does |
|---|---|---|
mode | edge-to-edge | overlay | immersive | edge-to-edge: bars as transparent overlays, content inset. overlay: content behind the status bar. immersive: bars hidden. |
appearance | light | dark | Icon contrast for both bars (light = light icons). |
statusBarColor / navBarColor | #RRGGBB | Bar background colors. |
statusBarStyle / navBarStyle | light | dark | Per-bar icon-style override. |
deeplink: inbound links#
Register a custom URL scheme so links like myapp://open launch your app:
json
"deeplink": { "scheme": "wildlife", "host": "sighting" }| Key | What it is |
|---|---|
scheme | The URL scheme (e.g. wildlife). Empty → no deeplink handler. |
host | Optional host component. Empty matches any host for the scheme. |
env: non-secret values#
Pass non-secret configuration into your app, readable at runtime via window.host.env:
json
"env": { "llm.provider": "openai" },"host": { "env": true }The env block requires host.env: true or the build fails. Only put non-secret
values here. Secrets belong in the runtime vault (window.host.vault).