A Flutter package that provides computed values for ValueNotifier
, inspired by the Selectors from Recoil.
This package includes two main classes:
ValueSelector
: Computes a synchronous value based on a given scope.
These classes allow you to create computed values that automatically update when their dependencies change, providing a reactive programming model similar to Recoil selectors.
- Reactive computation of values based on dependencies.
- Synchronous and asynchronous selectors.
- Automatic updates when dependencies change.
- Easy integration with Flutter's ValueNotifier.
Add the following to your pubspec.yaml
:
flutter pub add value_selectable
Computes a synchronous value based on a given scope:
import 'package:flutter/widgets.dart';
import 'package:value_selectable/value_selectable.dart';
void main() {
final valueNotifier = ValueNotifier<int>(1);
final selector = ValueSelector<int>((get) => get(valueNotifier) + 1);
print(selector.value); // Outputs: 2
valueNotifier.value = 2;
print(selector.value); // Outputs: 3
}
Contributions are welcome! Please open an issue or submit a pull request.