Skip to content

Feat/minimal mobile sdk - #174

Open
rmn-boiko wants to merge 8 commits into
UTEXO-Protocol:devfrom
rmn-boiko:feat/minimal-mobile-sdk
Open

rmn-boiko wants to merge 8 commits into
UTEXO-Protocol:devfrom
rmn-boiko:feat/minimal-mobile-sdk

Conversation

@rmn-boiko

Copy link
Copy Markdown
Collaborator

No description provided.

Add the mobile SDK design doc and the implementation plan for a single Rust
client SDK exposed to both Kotlin and Swift via uniffi.

Design doc (docs/design/mobile-sdk-and-lightweight-uniffi.md) measures where
the uniffi node's size goes on mobile (99.0 MB as CI ships it, 46.6 MB tuned)
and concludes that most apps want the Minimal SDK variant rather than a node
on the phone.

The plan (docs/plans/20260915-minimal-mobile-rust-sdk.md) supersedes the
design doc's separate Path A2 (native Kotlin) / Path A3 (native Swift) routes
with one Rust crate serving both. Measured 2026-09-15: a minimal Rust client
crate with the real derive/PSBT/sign paths reachable is 1.94 MB including
uniffi scaffolding across 31 crates -- the same order as the doc's ~1.9 MB
estimate for pure Kotlin, since both are dominated by the same libsecp256k1
precomputed tables (1.06 MB). With size neutral, implementation count decides.

Key decisions recorded in the plan: no rgb-lib dependency (keeps the size
budget and keeps the rgb-lib-generated parity fixture a real cross-check
rather than a tautology); the TypeScript SDK stays hand-written as the
independent second implementation; HTTP transport is a foreign trait
implemented per platform, with intent binding staying in Rust.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@rmn-boiko
rmn-boiko force-pushed the feat/minimal-mobile-sdk branch from f91aa17 to 1694b7c Compare September 15, 2026 16:04
@rmn-boiko
rmn-boiko force-pushed the feat/minimal-mobile-sdk branch from 1694b7c to d58def5 Compare September 15, 2026 16:05
@rmn-boiko
rmn-boiko marked this pull request as ready for review September 28, 2026 14:16
gofman8 pushed a commit that referenced this pull request Sep 29, 2026

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant