Modules
Dala — BEAM-on-device dalaile framework for Elixir.
Public API for Dala application functionality.
Behaviour for Dala application entry point.
Public API for native view components.
Public API for component registry operations.
Public API for component server operations.
Platform-aware Erlang distribution startup.
WiFi network information and configuration.
Android-specific device events. Symmetrical with Dala.Device.Ios.
Cross-platform device events and queries.
iOS-specific device events. Subscribers receive events that either have no
Android counterpart (e.g. :protected_data_did_become_available) or carry
extra iOS fidelity beyond what Dala.Device exposes cross-platform.
Diff engine for incremental UI updates.
Convenience shorthand for Dala.Connectivity.Dist.
Convenience module that re-exports the unified event emission API.
Canonical address for an event in the Dala view tree.
Translates legacy event shapes ({:tap, tag}, {:change, tag, value},
{:tap, {:list, id, :select, index}}) into the canonical
{:dala_event, %Address{}, event, payload} envelope.
Behaviour for stateful event-owning components.
The unified event emission API for Dala.
Resolves a target: spec to a concrete delivery pid.
Throttle / debounce config for high-frequency event subscriptions.
Live tracing of Dala events for IEx debugging.
GPU texture rendering surface.
Encodes render commands to binary format for the Rust command queue.
High-level GPU compute orchestration for Dala.
Typed wrapper around EXCubeCL GPU buffers.
Kernel execution and registry for GPU compute.
Multi-stage GPU compute pipeline orchestration.
GenServer that holds the state for a GPU surface.
Biometric authentication (Face ID / Touch ID / fingerprint).
Bluetooth Low Energy (BLE) support.
Haptic feedback. No permission required on either platform.
NFC (Near Field Communication) tag reading.
QR code and barcode scanner.
Public API for list operations.
Unified ML API for Dala apps on iOS and Android.
Helper to configure ML dependencies and settings for Dala apps.
CoreML integration for iOS.
ML debugging and profiling tools for Dala apps.
EMLX (Apple Silicon GPU) integration for Dala.
Examples of using ML in a Dala app.
GPU-accelerated ML inference via EXCubeCL.
Model management for Dala ML.
Public API for ONNX Runtime inference.
Preprocessing pipelines for ML model inputs.
On-device training support for Dala ML.
Adaptive bitrate streaming and jitter buffer.
Frame-clock driven animation system.
Microphone recording and audio playback.
Native camera capture for photos and videos.
Realtime frame-clock for AV sync and animation.
GPU compute filters for realtime video processing.
GPU-accelerated media processing via EXCubeCL.
Photo / video library picker.
High-level media pipeline orchestrator.
Realtime scene graph compositor.
Stream process supervisor.
Timestamp-synchronized subtitle rendering.
GPU texture pool to avoid constant allocation/deallocation.
Hardware-accelerated video streaming surface.
Nx integration helpers for Dala.
Platform-native NIF functions.
ETS-backed registry mapping screen name atoms to their modules.
Structured representation of a UI node in the Dala framework.
Permission management for Dala plugins.
Background execution keep-alive via a silent audio session.
System clipboard access. No permission required.
Runtime diagnostics that run inside a Dala app's BEAM. Designed to be invoked via Erlang RPC from a developer's machine to inspect the actual state of a deployed app.
Linking API for opening URLs and handling deep links.
Bridge between Phoenix LiveView and the Dala native WebView.
Device location (GPS / network).
OTP logger handler that routes Elixir Logger output to the platform's native system log.
Local and push notifications.
Request OS-level permissions from the user.
Simplified PubSub for Dala apps using Elixir's built-in Registry.
Maps component names (atoms) to their platform-specific NIF constructors.
Persistent app settings (UserDefaults on iOS, SharedPreferences on Android).
System share sheet. Opens the OS share dialog with a piece of content. Fire-and-forget — no response arrives in the BEAM.
Persistent key-value store for app state.
Behaviour and macros for self-describing component plugins.
Represents a single component schema within a plugin.
Evaluates the component definition DSL.
Typed event definitions for Dala plugins.
Lifecycle management for Dala plugins.
Generates native plugin manifests for iOS and Android platforms.
Generates binary protocol specifications from plugin schemas.
Registry for plugin management and lookup.
Interactive HTML preview and design tool for Dala UI components.
Interactive drag-and-drop UI design canvas for Dala.
Generates Elixir screen module source code from Dala UI trees.
Example UI trees for Dala Preview demonstration.
Standalone Phoenix LiveView server for Dala Preview Designer.
Root layout for Dala Preview LiveView.
Convenience module that re-exports the PubSub API.
Serializes a component tree to a binary command stream and passes it to the platform NIF in a single call. Compose (Android) and SwiftUI (iOS) handle diffing and rendering internally.
Behaviour and macros for Dala screens.
Central registry for tracking all active screens in the application.
Screen behaviour and Spark DSL entry point.
Convenience shorthand for Dala.Setup.Setup.
Android Bluetooth/WiFi setup automation for Dala.
iOS Bluetooth/WiFi setup automation for Dala.
Runtime setup helpers for Bluetooth and WiFi functionality.
The socket struct passed through all Dala.Screen and Dala.Ui.NativeView callbacks.
Spark DSL for declarative Dala screens.
Generates entity structs and Spark entity definitions from the Component registry.
Compile-time validation for Dala Spark DSL.
Spark DSL extension for declarative PubSub subscriptions in Dala screens.
Spark transformer that generates the mount/3 function from DSL attributes.
Spark transformer that handles PubSub subscriptions from DSL.
Spark transformer that generates the render/1 function from DSL entities.
Android-specific storage locations and MediaStore integration.
iOS-specific storage locations and media library integration.
Binary data handling via blob references.
System file picker. Opens the OS document picker (Files app on iOS, SAF on Android).
App-local file storage.
Remote inspection and interaction helpers for connected Dala apps.
Convenience shorthand for Dala.Theme.Theme.
Theme that follows the OS-level light / dark setting.
GenServer that re-resolves the active theme when the OS appearance flips.
Birch theme for Dala — warm parchment surfaces with a chestnut-brown accent.
Citrus theme for Dala — warm charcoal with a lime-green accent.
High-contrast greyscale dark theme.
High-contrast greyscale light theme.
Obsidian theme for Dala — deep blacks with a violet accent.
Design token system for Dala apps.
Central registry of all Dala UI components.
Diff engine for incremental UI updates.
Bidirectional JS bridge for the native WebView component.
Native alert dialogs, action sheets, and toast messages.
A GPU-accelerated canvas component for Dala UI trees.
Data-driven list component.
Behaviour for native view components.
Serializes a component tree to a binary command stream and passes it to the platform NIF in a single call. Compose (Android) and SwiftUI (iOS) handle diffing and rendering internally.
Parsers for common NFC tag payloads and QR/barcode content.
Accelerometer and gyroscope sensor data.
Backward-compatible type alias for Dala.Socket.
Thin wrapper around a props map for named, reusable styles.
UI component constructors for the Dala framework.
Screen wakelock — keep the device screen on.
Design state management
Mix Tasks
Runs the Dala onboarding integration tests, which verify that a new user can go from zero to a running app without hitting any friction that should have been caught automatically.
Generates a new Dala plugin scaffold. Usage: mix dala.plugin.new dala_camera
Preview Dala UI designs in a browser without a simulator/emulator.
One-command setup for Bluetooth and WiFi functionality in Dala apps.
Automated setup for iOS Bluetooth and WiFi functionality in Dala.