argent-track-sdk
Kotlin Multiplatform analytics & attribution SDK — event pipeline, push/in-app campaigns, install attribution. Built to replace CleverTap + AppsFlyer.
KotlinKMPSQLDelightKtor
High-level design
A self-contained KMP SDK a host app drops in for product analytics, push, and attribution — every call is queued locally and flushed in batches, so it never blocks the host or loses an event on a dead network.
event pipeline
durable queue + batched flush, surviving process death
↓
identity & consent
hashed user id, consent-gated collection
↓
push / in-app
token registration + routing, campaign message host-render hook
↓
attribution
install referrer (Android) + SKAN (iOS) plumbing
↓
PII denylist
property keys shaped like token/otp/pan/aadhaar are stripped client-side
Low-level design
The SDK is designed to never crash or block the host app — correctness over reach.
- –Every call before initialize() is a logged no-op, so ordering mistakes can't crash the host
- –A sensitive-property denylist redacts by shape (token/otp/password/pan/…) rather than a maintained blocklist
- –Queue + batching live on the SDK's own scope; all public calls return immediately