NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
Packagist
Build fast native Android and iOS applications with PHP and PAM.
Last release today
07 Oct 2026
Ships on a steady schedule
a new release about every 1 weeks
Nearly every release is documented
notes for 58 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
2 months old
286 releases · first in 2026
One column per month.
Keep PAM layout frames authoritative for Android images so intrinsic drawable proportions cannot collapse full-width media inside virtualized list cel
Add cross-platform cache usage and cleanup through Caches, reporting image, media and temporary bytes while preserving explicitly pinned offline media
Caches, reporting image,
media and temporary bytes while preserving explicitly pinned offline media by
default.Add configurable Android share targets and a typed IncomingShares API for cold/warm ACTION_SEND and ACTION_SEND_MULTIPLE, importing shared files into
IncomingShares API for
cold/warm ACTION_SEND and ACTION_SEND_MULTIPLE, importing shared files
into the app sandbox before dispatch.Parse template tags with a quote-aware scanner so comparison operators such as < and > remain valid inside bound and conditional attributes.
< and > remain valid inside bound and conditional attributes.Added bounded incoming deep-link delivery for Android cold starts and singleTask warm starts through Linking::initial() and Linking::listen().
singleTask warm starts through Linking::initial() and
Linking::listen().Linking::listenAndRoute() to connect native URL delivery directly to
the existing typed navigator matcher.PamLinking bridge for iOS application and scene delegates.pushin://profile/david.Added cross-platform MediaPickerType::Media filtering for image-or-video social galleries without exposing unrelated documents.
MediaPickerType::Media filtering for image-or-video
social galleries without exposing unrelated documents.Added tokenized native ScrollView requests for instant jumps to the end or to a descendant identified by testId, without measuring content in PHP.
ScrollView requests for instant jumps to the end or
to a descendant identified by testId, without measuring content in PHP.scrollRequest and
scrollTargetTestId.Flush focused sync="native" input values before press actions so handlers always receive the exact text visible on screen without per-keystroke bridge
sync="native" input values before press actions so handlers
always receive the exact text visible on screen without per-keystroke bridge
traffic.Add cross-platform AudioRecorder::watch() telemetry with coalesced native duration and normalized amplitude samples on Android and iOS.
AudioRecorder::watch() telemetry with coalesced native
duration and normalized amplitude samples on Android and iOS.Add guarded count() and strict-capable in_array() collection helpers to declarative template expressions, enabling efficient derived list state withou
count() and strict-capable in_array() collection helpers to
declarative template expressions, enabling efficient derived list state
without duplicating membership flags into every rendered item.Keep the resolved Android sandbox file URI after the media-cache pass instead of allowing its no-op result to restore the original pam-file:/// source
pam-file:/// source.Preserve the provider's original display name when Android and iOS import a picked file, while keeping the collision-resistant UUID exclusively in its
Resolve pam-file:/// video and audio sources into the application sandbox before Android playback, with the same authority, traversal, existence and p
pam-file:/// video and audio sources into the application sandbox
before Android playback, with the same authority, traversal, existence and
percent-decoding guarantees already used by native images.Cancel competing Pressable tap and long-press semantics as soon as a composed native gesture recognizes movement, preventing pan/swipe actions from al
Pressable tap and long-press semantics as soon as a
composed native gesture recognizes movement, preventing pan/swipe actions
from also opening contextual menus.Keep fixed header and footer dimensions intact inside Android SafeAreaView, while flex children consume the real visible window viewport exactly once
SafeAreaView, while flex children consume the real visible window
viewport exactly once across edge-to-edge and consumed-system-bar modes.GestureEvent objects.GestureDetector tags the same pointer and distance defaults
as the imperative API, including two-pointer pinch and rotation gestures.Persist completed audio recordings inside pam-files/recordings on Android and iOS so voice-message outboxes survive process death and device restarts.
pam-files/recordings on Android
and iOS so voice-message outboxes survive process death and device restarts.relativePath while preserving the recording
URI for playback and guarded deletion.Deliver HTTP transport failures as status-zero HttpResponse values with a typed error instead of throwing across the component runtime.
HttpResponse values with a
typed error instead of throwing across the component runtime.Nothing published for this version
Nothing published for this version
Add typed Files::pickMany() on Android and iOS with native multi-selection, ordered background imports, bounded batches, unique sandbox paths, and tra
Files::pickMany() on Android and iOS with native multi-selection,
ordered background imports, bounded batches, unique sandbox paths, and
transactional cleanup when an import fails.Accept React Native/CSS-compatible flex-start and flex-end aliases for template alignItems, alignSelf, and justifyContent properties.
flex-start and flex-end aliases for
template alignItems, alignSelf, and justifyContent properties.Add SQLite::transaction() for up to 10,000 heterogeneous prepared statements in one bridge call and one native Android/iOS transaction.
SQLite::transaction() for up to 10,000 heterogeneous prepared
statements in one bridge call and one native Android/iOS transaction.Template && and || expressions now always consume their right operand, preventing valid compound conditions from failing with an unexpected-token erro
&& and || expressions now always consume their right operand,
preventing valid compound conditions from failing with an unexpected-token
error when PHP short-circuits the evaluated boolean value.Add a typed, asynchronous audio recorder for Android and iOS with AAC/M4A capture, real duration and file-size metadata.
Make template bind:value and bind:checked changes participate in the component lifecycle by invoking updating, updated, and propsChanged.
bind:value and bind:checked changes participate in the
component lifecycle by invoking updating, updated, and propsChanged.Give Android dialogs an overlay-priority predictive-back callback so one hardware Back gesture closes only the top modal instead of also popping the u
Add typed, asynchronous current-location access on Android and iOS with configurable accuracy, timeout and cached-position age.
Coerce dynamically bound hexadecimal colors to native integer values across all color properties, matching static template color behavior.
Add a first-class system Back interceptor to stack navigation so screens can dismiss transient editing, selection, search, sheet, and viewer states be
Nothing published for this version
Add a native SQLite bulk-write fast path that crosses the bridge once, reuses one prepared statement and commits one transaction.
Keep flex layouts consistent after safe-area insets reduce their native viewport, so fixed headers and composers remain visible around flexible scroll
Add typed, paginated Android and iOS contacts access with an explicit contacts permission.
ScrollView across Android and iOS.Add generic native HTTP requests across Android and iOS with GET, POST, PUT, PATCH and DELETE methods, bounded request bodies and timeouts, custom hea
Consume independently versioned PHP 8.4 and 8.5 Android runtimes owned and verified by PAM, with side-by-side layouts and project-level selection comp
Reapply explicit Android scroll offsets after retained content completes its next layout pass, keeping newly appended chat bubbles visible above the c
Keep the chat composer focused and the software keyboard visible after sending while clearing the retained native input authoritatively.
Give every Gallery detail screen a consistent, safe-area-aware header frame with centered 48 dp controls and deliberate spacing below system UI.
Keep KeyboardAvoidingView composers and submit actions visible on edge-to-edge Android hosts by combining animated IME insets with the actual window-r
KeyboardAvoidingView composers and submit actions visible on
edge-to-edge Android hosts by combining animated IME insets with the actual
window-resize delta, including reliable listener cleanup on unmount.0.4.x SDK and add pam mobile doctor to the first-run path.Add first-class native image/video/audio caching with memory and disk policies, TTL, stable keys, offline pinning, checksums, deduplicated downloads,
Image and MediaPlayer.Component with typed immutable props, setup/render hooks, reactive
local state, computed/memo values, update guards, effects/watchers, guaranteed
cleanup, render error boundaries, provide/inject context, typed slots/events,
exposed component refs and lifecycle-safe native refs.Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Add integer-backed async, form, motion, haptic and adaptive-tab contracts.
Add Android protocol, renderer, event routing, view identity and navigation instrumentation coverage.
Your coding agent can read these notes before it upgrades. Set up the MCP server →