xmtp_plugin 1.0.4 copy "xmtp_plugin: ^1.0.4" to clipboard
xmtp_plugin: ^1.0.4 copied to clipboard

A Flutter plugin for XMTP decentralized messaging. Supports DMs, group chats, content codecs, consent management, and real-time streaming across Android, iOS, Windows, and Web.

1.0.4 #

  • Added staticGetInboxIdForAddress(address, environment) — Network lookup for the real XMTP inbox ID mapped to an Ethereum address. Handles linked accounts (keys added to another inbox via addAccount). Does NOT require an initialized client. Available on Android, iOS, and Windows.
  • Added staticDeleteLocalDatabase(address, inboxId, environment) — Deletes the local XMTP database files for a given address/inboxId without requiring an initialized client. Enables recovery when the DB encryption key is lost but the local DB still exists. Available on Android, iOS, and Windows.
  • Removed computeInboxId — Gave wrong results for addresses added to a different inbox via addAccount. Use staticGetInboxIdForAddress (network lookup) instead.

1.0.3 #

  • Web: Upgraded to XMTP Browser SDK v6. Complete rewrite of the JavaScript bridge (web/xmtp_client_manager.js). All v6 API changes adopted: createDm/createGroup (renamed), sendText (replaces send), IdentifierKind enums, accountIdentifiers (replaces addresses), fetchInboxState/inboxState split, ConsentState/ConsentEntityType enums.
  • Web: Switched to Vite bundler for proper Web Worker and WASM handling. Includes vite.config.js and build instructions.
  • Web: Added viem for proper secp256k1 ECDSA message signing (replaces SHA-256 mock signer).
  • Web: Fixed client.close() — previous versions leaked Web Workers on re-initialization, blocking OPFS database access for new clients.
  • Web: Fixed InboxState field mappingaccountIdentifiers (not identifiers), recoveryIdentifier (not recoveryIdentity), IdentifierKind enum conversion.
  • Web: Fixed listGroupMembers — updated from m.addresses (v5) to m.accountIdentifiers (v6).
  • Cross-platform: Conditional export of XmtpPluginWindows using dart.library.js_interop guard. Web gets a no-op stub, native platforms get the real FFI implementation. Fixes dart2js compilation failure when building for web.
  • Cross-platform: Defensive encodedContent type handlingList<dynamic> (from JS interop) is now converted to Uint8List in both _processMessages and subscribeToAllMessages. No behavior change on native platforms.
  • Test app now runs on all platforms — Web, Windows, and Android from a single test_app/. 22 integration tests covering key generation, client init, DMs, groups, sync, addAccount, and inbox state verification.

1.0.2 #

  • Clarified Windows setup: DLL is not included in pub.dev package, clone repo + build + copy workflow documented
  • Updated README and START_HERE with explicit per-platform instructions

1.0.1 #

  • Removed untested macOS and Linux platform declarations
  • Fixed lint warnings (unused imports, missing @override annotations, unnecessary type checks)
  • Added .gitignore, removed generated files from tracking

1.0.0 #

  • Initial release
  • Client initialization with private key and encrypted local database
  • Direct messages (DMs) and group conversations
  • Real time message streaming via subscribeToAllMessages()
  • Extensible codec system with built in support for text, attachments, remote attachments, reactions, replies, read receipts, actions, intents, group updates, delete messages, leave requests, and multi remote attachments
  • Consent management per conversation and per inbox
  • Group operations: create, update metadata, manage members and admin roles
  • Inbox management: installations, account linking, recovery identity
  • History sync across devices
  • Platform support: Android (xmtp-android SDK), iOS (XMTP Swift SDK), Windows (Rust FFI via libxmtp), Web (XMTP Browser SDK v5)
1
likes
0
points
116
downloads

Publisher

verified publisherjmsl.xyz

Weekly Downloads

A Flutter plugin for XMTP decentralized messaging. Supports DMs, group chats, content codecs, consent management, and real-time streaming across Android, iOS, Windows, and Web.

Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

crypto, flutter, flutter_rust_bridge, flutter_web_plugins, http, plugin_platform_interface, pointycastle, protobuf, wallet, web, web3dart

More

Packages that depend on xmtp_plugin

Packages that implement xmtp_plugin