Komodo Coin Updates

Runtime updater for the Komodo coins list, coin configs, and seed nodes with local persistence. Useful for apps that need to refresh coin metadata without shipping a new app build.

Install

dart pub add komodo_coin_updates

Initialize

import 'package:flutter/widgets.dart';
import 'package:komodo_coin_updates/komodo_coin_updates.dart';

Future<void> main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await KomodoCoinUpdater.ensureInitialized('/path/to/app/data');
}

Provider (fetch from GitHub)

final provider = const CoinConfigProvider();
final coins = await provider.getLatestCoins();
final coinConfigs = await provider.getLatestCoinConfigs();

Repository (manage + persist)

final repo = CoinConfigRepository(
  api: const CoinConfigProvider(),
  storageProvider: CoinConfigStorageProvider.withDefaults(),
);

if (await repo.coinConfigExists()) {
  if (await repo.isLatestCommit()) {
    await repo.loadCoinConfigs();
  } else {
    await repo.updateCoinConfig();
  }
} else {
  await repo.updateCoinConfig();
}

License

MIT

Libraries

komodo_coin_updates
Support for doing something awesome.