nomos_flutter 0.62.0
nomos_flutter: ^0.62.0 copied to clipboard
Drive the real Nomos GitHolon from a Flutter app — a local-first domain runtime. iOS + macOS run the native-AOT kernel (no WebView memory cap); Android uses a hidden secure WebView. Write TypeScript d [...]
nomos_flutter #
nomos_flutter runs a generated Nomos business client locally inside a Flutter app. Reads and writes happen
against the local holon; cloud custody provides synchronization between devices.
Use it #
dependencies:
nomos_flutter: ^0.61.0
import 'package:nomos_flutter/nomos_flutter.dart';
import 'package:co2_nomos_domain_client/co2_nomos_domain_client.dart';
NomosScope.home(
cloud: 'https://nomos.captainapp.co.uk',
application: 'co2-platform',
authToken: firebaseIdToken,
builder: (context, nomos) {
final app = Co2Client(nomos.bridge, actor: nomos.actor);
return Co2Home(app);
},
)
The public inputs are the application and its signed-in identity token. The client derives the subject from
the token, discovers the active application contract, and durably owns first use, later-device recovery,
local persistence, synchronization, and runtime
compatibility. It invokes builder only after the person's home is ready and verified.
If the application is absent, errorBuilder receives NomosApplicationUnavailable; deploy it once with:
githolon deploy co2-platform
Then use the generated client in business language:
final estate = await app.birth(CreateEstate(name: 'Team Alpha'));
app.watchEstates().listen(render);
Platform setup #
- iOS, Android and web: no app configuration.
- macOS sandboxed apps: add
com.apple.security.network.clientto DebugProfile and Release entitlements.
Apple builds use the native Nomos kernel shipped by this package. Android uses the packaged WebView runtime; web uses the browser runtime. A release check binds every platform artifact to one exact kernel identity, so a missing or stale native artifact fails as a broken package instead of silently selecting another engine.