Skip to main content

pollux_polyglot_flutter_adapter 0.1.0 copy "pollux_polyglot_flutter_adapter: ^0.1.0" to clipboard
pollux_polyglot_flutter_adapter: ^0.1.0 copied to clipboard

Official Flutter and Dart adapter for Pollux Core deterministic authority sandboxing and capability evaluation.

pollux_polyglot_flutter_adapter #

Official Flutter and Dart adapter for Pollux Core deterministic authority sandboxing and capability evaluation across platforms.

pub package CI License: MIT


Features #

  • Deterministic Authority Sandboxing: Evaluate operation candidates against immutable Authority Manifest policies.
  • Cross-Platform FFI Integration: High-performance C ABI bridge (pollux-abi/1) supporting macOS, iOS, Windows, Linux, and Android.
  • Zero-Copy Memory Safety: Managed pointer allocation and deallocation through dart:ffi and package:ffi.
  • Structured Audit Traces: Receive structured decision verdicts (allow / deny) and execution trace metrics for observability.
  • Strong Typing: Idiomatic Dart models for operations, manifests, evaluation verdicts, and exception hierarchies.

Getting started #

Prerequisites #

  • Dart SDK: ^3.3.0
  • Flutter SDK: ^3.19.0
  • Pollux Core native binary: pollux_ffi.dll (Windows), libpollux_ffi.dylib (macOS/iOS), or libpollux_ffi.so (Linux/Android).

Installation #

Add pollux_polyglot_flutter_adapter to your pubspec.yaml dependencies:

flutter pub add pollux_polyglot_flutter_adapter

Or manually:

dependencies:
  pollux_polyglot_flutter_adapter: ^0.1.0

Native Library Setup #

The adapter dynamically discovers the native library in standard locations:

  1. System library paths (/usr/local/lib, /opt/homebrew/lib, PATH, etc.)
  2. Next to your application executable or script
  3. Custom location via environment variables POLLUX_CORE_LIB or POLLUX_FFI_PATH
  4. Custom path passed directly to PolluxEngine.load(manifest, customLibraryPath: '/path/to/lib')

Usage #

Here is a complete, minimal example showing how to initialize an engine, evaluate filesystem operations, and dispose of the instance:

import 'package:pollux_polyglot_flutter_adapter/pollux_polyglot_flutter_adapter.dart';

void main() {
  // 1. Define an Authority Manifest
  const manifest = '''
version: 1
filesystem:
  read:
    - ./assets
    - /tmp
''';

  // 2. Initialize the Pollux Engine
  final engine = PolluxEngine.load(manifest);

  print('Pollux ABI Version: ${engine.abiVersion}');
  print('Pollux Core Version: ${engine.coreVersion}');

  // 3. Evaluate a permitted filesystem read operation
  final readOp = Operation.fileRead('./assets');
  final readResult = engine.evaluate(readOp);
  print('Read Verdict: ${readResult.outcome} (Allowed: ${readResult.isAllowed})');

  // 4. Evaluate an unauthorized filesystem write operation
  final writeOp = Operation.fileWrite('./assets');
  final writeResult = engine.evaluate(writeOp);
  print('Write Verdict: ${writeResult.outcome} (Allowed: ${writeResult.isAllowed})');

  // 5. Clean up native resources
  engine.dispose();
}

Evaluating Custom Operations #

You can evaluate network or custom operations using domain constructors:

// Network connect check
final netOp = Operation.netConnect('api.internal:443');
final netResult = engine.evaluate(netOp);

// Process spawn check
final cmdOp = Operation.processSpawn('/bin/sh');
final cmdResult = engine.evaluate(cmdOp);

// Custom operation domain
final customOp = Operation.custom(
  capability: 'execute',
  resourceDomain: 'custom_domain',
  resourceValue: 'res://service',
);
final customResult = engine.evaluate(customOp);

Architecture #

pollux_polyglot_flutter_adapter connects Flutter applications to Pollux Core via dart:ffi:

┌───────────────────────────────────────────────┐
│              Flutter / Dart App               │
└───────────────────────▲───────────────────────┘
                        │ Dart API
┌───────────────────────▼───────────────────────┐
│        PolluxEngine / Operation Model         │
└───────────────────────▲───────────────────────┘
                        │ dart:ffi
┌───────────────────────▼───────────────────────┐
│     Native Bridge (pollux-abi/1 C Header)     │
└───────────────────────▲───────────────────────┘
                        │ Native Call
┌───────────────────────▼───────────────────────┐
│    libpollux_ffi (Rust / Core Sandboxing)     │
└───────────────────────────────────────────────┘

Additional information #

Source Code and Issues #

Contributing #

Contributions, feedback, and security reviews are welcomed. Please review CONTRIBUTING.md and CODE_OF_CONDUCT.md before submitting pull requests.

License #

This project is licensed under the MIT License.


Pollux Polyglot Flutter Adapter — A Sxnnyside Project
© 2026 Sxnnyside Project

1
likes
160
points
126
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

Official Flutter and Dart adapter for Pollux Core deterministic authority sandboxing and capability evaluation.

Homepage
Repository (GitHub)
View/report issues
Contributing

Topics

#security #sandboxing #authority #ffi #polyglot

License

MIT (license)

Dependencies

ffi, flutter

More

Packages that depend on pollux_polyglot_flutter_adapter