কয়েক মিনিটে miniriverpod ইনস্টল করুন।

SDK সীমা নির্ধারণ করুন, প্যাকেজ যোগ করুন, এবং ProviderScope + WidgetRef.watch সঠিকভাবে সংযুক্ত হয়েছে কিনা নিশ্চিত করুন।

প্রয়োজনীয়তা

analyzer এবং runtime mismatch এড়াতে প্যাকেজের মতোই constraint ব্যবহার করুন।

Dart SDK

>=3.10.0 <4.0.0

Flutter

টিপ

আপনার অ্যাপ যদি Dart 3.10-এর নিচে pin করা থাকে, তাহলে আগে SDK constraint বাড়ান, তারপর flutter pub get চালান।

ইনস্টলেশন

প্রথমে CLI দিয়ে ইনস্টল করাই ভালো, এরপর ভার্সনকে প্যাকেজের changelog-এর সাথে মিলিয়ে রাখুন।

CLI

pubspec.yaml

# নির্ভরতার তালিকায় যোগ করুন
dependencies:
  miniriverpod: ^0.0.2

প্রথম পদক্ষেপ

আপনার অ্যাপকে ProviderScope-এর মধ্যে রাখুন, একটি Provider নির্ধারণ করুন, এবং ConsumerWidget থেকে state রেন্ডার করুন।

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

final counterProvider = Provider<int>((ref) => 0);

void main() {
  runApp(const ProviderScope(child: CounterApp()));
}

class CounterApp extends ConsumerWidget {
  const CounterApp({super.key});

  @override
  Widget build(BuildContext context, WidgetRef ref) {
    final count = ref.watch(counterProvider);
    return Directionality(
      textDirection: TextDirection.ltr,
      child: Center(child: Text('$count')),
    );
  }
}
সিঙ্ক্রোনাস মানের জন্য Provider((ref) => ...) ব্যবহার করুন।
Future-এর জন্য AsyncProvider<T>((ref) async => ...), আর Stream-এর জন্য ref.emit(stream) ব্যবহার করুন।
মিউটেশন বাস্তবায়ন করলে ref.invoke(provider.method())-এ যান।

পরবর্তী পদক্ষেপ

মূল ধারণা

args-ভিত্তিক provider identity, Scope injection, এবং codegen-বিহীন ডিজাইন সিদ্ধান্তগুলো বুঝুন।

মূল ধারণা খুলুন

Provider ও পড়া

watch/read/listen আচরণ এবং AsyncProvider refresh pattern শিখুন।

Provider খুলুন

API Reference

invalidate, refreshValue, keepAlive, এবং invoke-এর মতো method দ্রুত খুঁজে নিন।

API Reference খুলুন