Легке рішення керування станом для Flutter.

Відчуйте потужність реактивної архітектури Riverpod без code generation та великих залежностей.

Без Code Gen

Пишіть стандартні Dart класи та provider’и. build_runner не потрібен.

Легкий

Менше 50KB. Ідеально для застосунків, чутливих до продуктивності.

Built-in Concurrency

Натхненний елегантним синтаксисом читання стану Riverpod.

Перші кроки

Дізнайтесь, як інтегрувати miniriverpod у Flutter-проєкт за кілька хвилин.

Встановлення

flutter pub add miniriverpod

Mutation + Invoke

lib/main.dart
class UserProvider extends AsyncProvider<User?> {
  UserProvider() : super.args(null);

  late final renameMut = mutation<void>(#rename);

  Call<void, AsyncValue<User?>> rename(String name) => mutate(
    renameMut,
    (ref) async {
      final api = ref.watch(apiProvider);
      await api.rename(name);
      ref.state = AsyncData(await api.me());
    },
    concurrency: Concurrency.restart,
  );
}

// UI
await ref.invoke(userProvider.rename('Alice'));
Compatibility Note

На відміну від оригінального Riverpod, Provider + AsyncProvider + WidgetRef орієнтований на Flutter і не підтримує автономні Dart-проєкти. Це дозволило прибрати 70% внутрішньої логіки для кращої продуктивності.

Попередній

Open Source

Наступний

Встановлення