bloom_modules library

Native Module platform and DSL for Bloom applications.

Exports annotations, manifests, native module registries, and custom native view bindings for bridging platform-specific Swift, Kotlin, and C++ capabilities into Bloom.

Example:

import 'package:bloom_framework/bloom_modules.dart';

@BloomModule(name: 'Biometrics')
class BiometricsModule extends NativeModule {
  // Module implementation
}

Classes

BloomAsyncFunction
Metadata annotation declaring an asynchronous native function bridge.
BloomConstant
Metadata annotation declaring a static constant exported by the host native platform.
BloomEvent
Metadata annotation declaring a native event listener.
BloomLifecycleHook
Metadata annotation declaring a host application lifecycle listener.
BloomModule
Metadata annotation declaring a Bloom Native Module.
BloomModuleManifest
Strongly typed manifest representation of bloom.module.yaml.
BloomModulePermission
Represents a permission declared in bloom.module.yaml.
BloomModulePlatformSpec
Platform constraints, dependencies, and native frameworks for a Bloom Native Module.
BloomModuleRegistry
Central singleton registry managing the lifecycle, registration, and discovery of Bloom Native Modules.
BloomNativeModule
Base class for all native Bloom modules bridging Dart to host iOS/Android platforms.
BloomNativeView
A cross-platform bridge widget for hosting hardware-accelerated native views (e.g. Camera Preview, MapKit/Google Maps, AR views, WebViews) declared in Bloom Modules.
BloomStream
Metadata annotation declaring a continuous native hardware stream.
BloomSyncFunction
Metadata annotation declaring a fast synchronous native function bridge.
BloomView
Metadata annotation declaring a native platform view (e.g. Camera preview, Map, AR view).

Enums

BloomLifecycleEvent
Application lifecycle events forwarded to registered Bloom Native Modules.
NativeThread
Execution thread model for native module operations on host platforms (iOS/Android).

Exceptions / Errors

BloomNativeConfigurationException
Thrown when a native module encounters invalid configuration or missing keys in bloom.yaml or module manifests.
BloomNativeException
Base exception for errors originating across the Bloom Native Module boundary.
BloomNativeHardwareUnavailableException
Thrown when a hardware sensor, camera, or peripheral device is busy, absent, or disabled.
BloomNativeOperationFailedException
Thrown when an internal native SDK operation or bridge promise rejected on the host platform.
BloomNativePermissionDeniedException
Thrown when a required native OS permission was denied, restricted, or permanently blocked.