API Reference dala v#0.0.6

Copy Markdown View Source

Modules

Dala — BEAM-on-device dalaile framework for Elixir.

Native alert dialogs, action sheets, and toast messages.

Behaviour for Dala application entry point.

Microphone recording and audio playback.

Background execution keep-alive via a silent audio session.

Biometric authentication (Face ID / Touch ID / fingerprint).

Binary data handling via blob references.

Bluetooth Low Energy (BLE) support.

Native camera capture for photos and videos.

System clipboard access. No permission required.

Behaviour for native view components.

Cross-platform device events and queries.

Android-specific device events. Symmetrical with Dala.Device.IOS.

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.

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.

Diff engine for incremental UI updates.

Platform-aware Erlang distribution startup.

The unified event emission API for Dala.

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.

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.

System file picker. Opens the OS document picker (Files app on iOS, SAF on Android).

Haptic feedback. No permission required on either platform.

Linking API for opening URLs and handling deep links.

Data-driven list component.

Bridge between Phoenix LiveView and the Dala native WebView.

Device location (GPS / network).

Helper to configure EMLX dependencies and settings for Dala iOS apps.

iOS integration layer for EMLX (MLX backend for Nx).

Simple example of using EMLX in a Dala iOS app.

Nx integration helpers for Dala on iOS.

Accelerometer and gyroscope sensor data.

OTP logger handler that routes Elixir Logger output to the platform's native system log.

ETS-backed registry mapping screen name atoms to their modules.

Structured representation of a UI node in the Dala framework.

Local and push notifications.

Request OS-level permissions from the user.

Photo / video library picker.

Interactive HTML preview for Dala UI components.

Example UI tree for Dala Preview demonstration.

Standalone Phoenix LiveView server for Dala Preview with live updates.

Layout module for Dala Preview LiveView.

Maps component names (atoms) to their platform-specific NIF constructors.

Serializes a component tree to JSON and passes it to the platform NIF in a single call. Compose (Android) and SwiftUI (iOS) handle diffing and rendering internally.

QR code and barcode scanner.

Screen behaviour and Spark DSL entry point.

Persistent app settings (UserDefaults on iOS, SharedPreferences on Android).

Runtime setup helpers for Bluetooth and WiFi functionality.

Android Bluetooth/WiFi setup automation for Dala.

iOS Bluetooth/WiFi setup automation for Dala.

System share sheet. Opens the OS share dialog with a piece of content. Fire-and-forget — no response arrives in the BEAM.

The ~dala sigil for declarative native UI.

The socket struct passed through all Dala.Screen and Dala.Component callbacks.

Spark DSL for declarative Dala screens.

Compile-time validation for Dala Spark DSL.

Spark transformer that generates the mount/3 function from DSL attributes.

Spark transformer that generates the render/1 function from DSL entities.

Persistent key-value store for app state.

App-local file storage.

Android-specific storage locations and MediaStore integration.

iOS-specific storage locations and media library integration.

Thin wrapper around a props map for named, reusable styles.

Remote inspection and interaction helpers for connected Dala apps.

Design token system for Dala apps.

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.

UI component constructors for the Dala framework.

Bidirectional JS bridge for the native WebView component.

WiFi network information and configuration.

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.

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.