Skip to content

ReactonReactive state, done right.

Fine-grained, glitch-free state management for Flutter — with a progressive API that scales from counters to collaborative, offline-first apps.

Reacton
8
Packages
monorepo workspace
120+
Public APIs
across core + flutter
18k+
Test cases
lines of Dart test
12
Cookbook recipes
end-to-end apps
Flutter DevTools
dedicated extension
≥ 3.0
Dart
sound null-safety
Progressive API

From a single reacton to distributed state — same mental model.

Reacton grows with your app. Start with the Level 1 primitives, reach for advanced features only when you need them.

Level 1 — 4 lines of state

main.dart
import 'package:flutter_reacton/flutter_reacton.dart';

final counter = reacton(0, name: 'counter');
final doubled = computed((read) => read(counter) * 2, name: 'doubled');

class CounterPage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    final count = context.watch(counter);
    final x2    = context.watch(doubled);

    return Column(children: [
      Text('Count: $count'),
      Text('Doubled: $x2'),
      ElevatedButton(
        onPressed: () => context.update(counter, (c) => c + 1),
        child: const Text('Increment'),
      ),
    ]);
  }
}
Ecosystem

Eight packages, one mental model.

Reacton ships as a batteries-included monorepo. Pick what you need; nothing is mandatory beyond the core.

Start building in 60 seconds.

One import. Zero boilerplate. A progressive API that scales from counters to collaborative, offline-first apps.

$flutter pub add flutter_reacton

Released under the MIT License.