Download the PHP package pushinbr/pam-native-sync without Composer
On this page you can find all versions of the php package pushinbr/pam-native-sync. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download pushinbr/pam-native-sync
More information about pushinbr/pam-native-sync
Files in pushinbr/pam-native-sync
Package pam-native-sync
Short Description Offline-first outbox, cursors, conflict resolution and incremental synchronization for PAM Native.
License Apache-2.0
Informations about the package pam-native-sync
Why PAM Native Sync
Coordinate local outboxes, incremental pulls, retries, and deterministic conflict resolution without prescribing an application vertical. The public API is strictly typed for PHP 8.5; expensive or frame-sensitive work stays in Rust or the platform SDK instead of crossing the application boundary every frame.
| Best for | A focused capability you can add to any PAM Native application |
| Native path | Durable outbox · Cursor protocol |
| Application model | Composer package + generated native integration |
| Design rule | Independent module; no feed, vertical, or application template bundled |
What you can build
- Field apps that must work without signal
- Collaborative records and optimistic edits
- Incremental synchronization of large local datasets
The client is backend-agnostic. Its HttpSyncTransport speaks the documented
JSON protocol and does not install or reference Laravel, PAM HTTP, or any
server package:
Quick start
Already have a PAM Native project? Add only this capability:
New to PAM? Follow the five-minute PAM Native setup once, then return here. Your application stays a normal Composer project with a committed lockfile.
An offline-first synchronization engine, not a database wrapper. It adds an idempotent outbox, ordered batches, incremental cursors, tombstones, retry budgets and deterministic conflict policies above PAM Native SQLite and any transport implementation.
See it in action
SyncTransport is provider-neutral. The built-in HTTP adapter works with
Laravel, PAM HTTP, or any other compatible server without adding a backend
package to the app. SQLite writes are prepared and remote changes plus cursor
advancement are committed in one native transaction. Server versions are
monotonic and stale pulls cannot overwrite newer replicas.
Local-first CRDTs
For collaboration that must converge before a server answers, the package also
ships backend-free primitives: HybridLogicalClock, LogicalTimestamp, and
LastWriteWinsMap. Clocks remain monotonic when wall clocks move backwards;
map snapshots retain tombstones and merge deterministically across replicas.
CRDTs do not require pam-native-sync-laravel, PAM HTTP, or a specific cloud.
Persistence and transport remain explicit application choices.
Platform support: Android API 26+, iOS 15+, PAM Native 0.8.x.