Lightweight na state management solution para sa Flutter.

Damhin ang lakas ng reactive architecture ng Riverpod nang walang code generation o mabibigat na dependencies.

No Code Gen

Sumulat ng standard Dart classes at providers. Walang build_runner.

Lightweight

Mas mababa sa 50KB. Perpekto para sa performance-critical apps.

Built-in Concurrency

Direktang hango sa eleganteng syntax ng Riverpod para sa pagbabasa ng state.

First Steps

Alamin kung paano i-integrate ang miniriverpod sa Flutter project sa loob ng ilang minuto.

Installation

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

Hindi tulad ng original Riverpod, Provider + AsyncProvider + WidgetRef ay nakatuon sa Flutter at hindi sumusuporta sa standalone Dart projects. Dahil dito, na-trim namin ang ~70% ng internal logic para sa mas mahusay na performance.