nomos_flutter 0.64.1 copy "nomos_flutter: ^0.64.1" to clipboard
nomos_flutter: ^0.64.1 copied to clipboard

PlatformiOSmacOS

Drive the real Nomos GitHolon from a Flutter app — a local-first domain runtime. Every platform acquires and retains the same provider-selected compatible WASM; Apple executes it through the resident [...]

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.62.3
import 'package:nomos_flutter/nomos_flutter.dart';
import 'package:co2_nomos_domain_client/co2_nomos_domain_client.dart';

NomosScope.home(
  cloud: 'https://nomos.cafe',
  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 #

  • Android and web: no app configuration.
  • iOS: device deployment target 13 or later (Apple-silicon simulators require iOS 14 or later).
  • macOS on Apple silicon: deployment target 11 or later; sandboxed apps also add com.apple.security.network.client to DebugProfile and Release entitlements.

The package contains the client, host runner and—on Apple—the exact-pinned V8/DrumBrake executor. It does not contain a kernel or pin one by package version. On every platform the host asks the configured provider for its compatible kernel selection, fetches the immutable wasm32-wasip1 artifact by SHA-256, verifies it, and keeps that exact selection in application-support storage. A first-ever start needs a connection; an app that has started successfully can restart offline from those verified bytes.

Apple executes that same WASM through DrumBrake rather than WebKit or JIT compilation. Xcode links only the stable host ABI into the app. Compatible kernel releases, gradual rollouts and rollbacks therefore do not require a new npm, Pub, CocoaPods or App Store release. A host package release is required only when the host ABI, executor or compatibility range changes. Missing, incompatible or mismatched artifacts fail explicitly.

0
likes
110
points
4.18k
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

Drive the real Nomos GitHolon from a Flutter app — a local-first domain runtime. Every platform acquires and retains the same provider-selected compatible WASM; Apple executes it through the resident DrumBrake host. Write TypeScript domains, get a typesafe Dart client, build Flutter widgets.

Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

crypto, ffi, fixnum, flutter, flutter_inappwebview, flutter_js, meta, nomos_client, nomos_types, path_provider, web, xml

More

Packages that depend on nomos_flutter

Packages that implement nomos_flutter