xmtp 0.0.1-development.1 copy "xmtp: ^0.0.1-development.1" to clipboard
xmtp: ^0.0.1-development.1 copied to clipboard

outdated

XMTP client SDK for Flutter applications.

example/lib/main.dart

import 'dart:math';

import 'package:flutter/material.dart';
import 'package:flutter_app_badger/flutter_app_badger.dart';
import 'package:flutter_hooks/flutter_hooks.dart';
import 'package:web3dart/credentials.dart';

import 'router.dart';
import 'session.dart';

void main() async {
  // A real app would use an elsewhere connected account.
  // For this demo, we just generate a random wallet on launch.
  var wallet = EthPrivateKey.createRandom(Random.secure());
  await initSession(wallet);

  _monitorTotalUnreadBadge();
  runApp(const XmtpApp());
}

class XmtpApp extends HookWidget {
  const XmtpApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp.router(
      title: 'XMTP',
      theme: ThemeData(primarySwatch: Colors.deepPurple),
      routerConfig: createRouter(),
    );
  }
}

/// Update the app badge when the number of unread messages changes.
void _monitorTotalUnreadBadge() {
  session.watchTotalNewMessageCount().listen((count) {
    if (count > 0) {
      FlutterAppBadger.updateBadgeCount(count);
    } else {
      FlutterAppBadger.removeBadge();
    }
  });
}
copied to clipboard
5
likes
0
points
103
downloads

Publisher

verified publisherxmtp.org

Weekly Downloads

2024.06.01 - 2025.04.26

XMTP client SDK for Flutter applications.

Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

async, cryptography, cryptography_flutter, fixnum, flutter, grpc, pointycastle, quiver, web3dart, xmtp_proto

More

Packages that depend on xmtp