November 6, 2025
Vue déjà vu in Flutter land
Flutter_compositions: Vue-inspired reactive building blocks for Flutter
Fans call it cleaner Flutter, skeptics say it’s a copycat
TLDR: Flutter Compositions brings Vue-style reactive building blocks to Flutter, promising cleaner screens with less boilerplate. Comments split fast: fans see a simpler pattern, critics say it’s just MobX/GetIt with lipstick or built-in tools already do it, plus a “Show HN?” cameo—proof Flutter state management still sparks big feelings.
Flutter Compositions just dropped, promising Vue-style “reactive” building blocks for Flutter apps—think Lego pieces that update themselves when your data changes. It packages simple ideas like refs, computed values, and watchers into one clean setup function, with extras like built‑in animations, async helpers, and even custom lint rules to keep code tidy. Fans are hyped about the promise of less boilerplate and more composable logic, while the docs and example app make it feel polished. But the crowd didn’t come quietly: one of the top reactions immediately wondered if this should be a Show HN—cue the meta police are out in force today.
Then the comparisons flew. Several users called it “MobX for Flutter,” pointing to MobX and GetIt as existing answers, while skeptics asked why not just use Flutter’s own ValueListenable tools. A seasoned dev added spice, praising Dart’s language but dragging Flutter’s ergonomics, confessing they rolled their own reactive helpers because the framework feels clunky. The memes wrote themselves: “Diet Vue for Flutter,” “ValueListenable truthers vs Composition cult,” and the classic “reinventing-the-wheel bingo.” Love it or not, this drop clearly hits a nerve: people want cleaner state management in Flutter—and they’re ready to fight over which flavor tastes best.
Key Points
- •Flutter Compositions brings Vue 3’s Composition API (ref, computed, watch, watchEffect) to Flutter for fine-grained reactivity.
- •The library is powered by alien_signals for signal-based state management and supports composable logic with custom composables.
- •Type-safe dependency injection is provided via provide/inject using InjectionKey.
- •The monorepo, managed by Melos, contains two packages: flutter_compositions (core) and flutter_compositions_lints (custom lint rules).
- •Documentation, development commands, and an example app are provided; the project acknowledges alien_signals and flutter_hooks and is MIT licensed (© 2025).