komodo_coin_updates 1.0.0 copy "komodo_coin_updates: ^1.0.0" to clipboard
komodo_coin_updates: ^1.0.0 copied to clipboard

Runtime coin config update coin updates.

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