De lichtgewicht state management-oplossing voor Flutter.

Ervaar de kracht van Riverpod's reactieve architectuur zonder de complexiteit van codegeneratie of grote dependencies.

Geen codegeneratie

Schrijf standaard Dart-classes en providers. Geen build_runner nodig.

Lichtgewicht

Minder dan 50KB footprint. Perfect voor performance-kritische apps.

Built-in Concurrency

Direct geinspireerd door Riverpod's elegante state-reading syntax.

Eerste stappen

Leer in enkele minuten hoe je miniriverpod in je Flutter-project integreert.

Installatie

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

In tegenstelling tot de originele Riverpod Provider + AsyncProvider + WidgetRef richt zich specifiek op Flutter-apps en ondersteunt geen standalone Dart-projecten. Daardoor konden we 70% van de interne logica schrappen voor betere performance.