SignalDock is an open-source SDK that collects mobile events offline-first and confirms every batch with a server ACK. Events wait in the on-device queue until the server confirms — nothing is dropped silently.
An Android event SDK with a durable on-device queue and a server that deduplicates by event ID. Collect at local commit. Confirm after server commit.
The host app calls track(). Events commit to a Room database first — collection succeeds at local commit, not at network success.
Events wait in a bounded on-device queue across process restarts. At capacity, new calls get QueueFull — existing events are never dropped silently.
WorkManager ships batches without holding a Room transaction open during HTTP. Retries reuse the same eventId, so redelivery is safe.
The server commits to PostgreSQL, then ACKs. Same ID and content means duplicate success; different content means a conflict rejection.
SignalDock.track("purchase", mapOf("sku" to "SKU-042"))
// → queued locally at commit, ACKed after server commit
The SDK is free software. The hosted cloud pays for its development.
No pricing games: one free tier that is actually free, one managed tier for teams that would rather not operate infrastructure.
One workspace for building with AI. Keep project folders, sessions, and reference files close to the conversation instead of switching between disconnected tools.
Taking shape now: workspace registration, session management, AI conversation controls, and read-only file previews in development builds. A public release is still ahead.
Built with Claude Code (Claude Opus) — planning, implementation, code review, and tests. Commits carry a Claude co-author trailer.