24 Mar 2026, 09:00 UTC≈1,340 views24 reactionsread 8 August 2026 Flutter forms without packages — everything is already in the SDK
Listenable.merge combines any controllers into a single subscription point. One listener — all validation:
final username = TextEditingController();
final agreed = ValueNotifier<bool>(false);
final focus = FocusNode();
final form = Listenable.merge([username, agreed, focus]);
form.addListener(_validate);
In _validate — all rules in one place, …
❤24
23 Mar 2026, 08:18 UTC≈1,320 views13 reactionsread 8 August 2026 Safe Resource Cleanup with Closure Chains
Ever had a multi-step async init where step 5 fails and you need to clean up steps 1–4 in reverse order — even if some cleanups throw too? Nested try/catch/finally turns into an unreadable mess fast.
Other languages solved this: Go has defer, C++ has RAII, C# has using. Dart has none of these. But you can build the equivalent in 6 lines:
void Function() dispose = () { disp…
❤13
14 May 2024, 06:47 UTC≈4,120 views24 reactionsread 8 August 2026 🎯 Tip of the Day: Using Extensions in Dart
Extensions in Dart enhance existing types with new methods, making your code cleaner and more readable. Here's a quick look at two useful extensions: let and ifNull.
Example 1: Let Extension
The let extension wraps an object in a function, allowing you to perform operations and return the result.
extension LetX<T extends Object?> on T {
R let<R extends Object?>(R Funct…
❤24
14 May 2024, 05:59 UTC≈3,570 views29 reactionsread 8 August 2026 🚀 Tip of the Day: To avoid potential errors when handling dialog and bottom sheet navigations in your application, consider the following advice:
When displaying a dialog or a bottom sheet, it is shown by default from the ROOT navigator:
showDialog(...);
showModalBottomSheet(...);
However, when calling pop(), it is called from the NEAREST navigator by default:
Navigator.of(context).pop(...);
Navigator.pop(contex…
❤29
3 May 2023, 17:46 UTC≈2,510 views8 reactionsread 8 August 2026 Tip of the Day: 🚀 To improve performance in your Flutter apps, use the ListView.builder instead of simply using ListView when dealing with long lists. It only creates items that are visible on the screen and recycles them when they scroll out of view, saving memory and reducing lagging! 🌟
ListView.builder(
itemCount: itemCount,
itemBuilder: (context, index) {
return YourListItemWidget(index);
},
);
Happ…
❤8
2 May 2023, 06:43 UTC≈2,560 views18 reactionsread 8 August 2026 Since Flutter 3.7, you can store all your API keys inside a JSON file and pass it to a new --dart-define-from-file flag from the command line.
E.g. --dart-define-from-file=keys.json
#TipOfTheDay #Dart #Flutter #PlugFox
❤18
6 Apr 2023, 11:58 UTC≈2,670 views9 reactionsread 8 August 2026 Discover how to leverage Dart isolates for effective concurrency, enabling efficient parallelism in your applications. Learn about creating isolates, handling communication, and implementing a watchdog timer.
https://plugfox.dev/mastering-isolates/
#tipoftheday #dart #dartdev #dartlang #flutter #flutterdev #plugfox #isolate
❤9
5 Apr 2023, 09:18 UTC≈2,160 views20 reactionsread 8 August 2026 Explore the world of singletons in Dart & Flutter with this comprehensive guide.
https://plugfox.dev/singleton
#tipoftheday #dart #dartdev #dartlang #flutter #flutterdev #plugfox #singleton
❤20
4 Apr 2023, 07:15 UTC≈2,070 views11 reactionsread 8 August 2026 Explore the power of anonymous functions in Dart to create flexible, expressive, and context-aware code. Learn their use as arguments, closures, value initialization, UI widget building, and conditional execution. Enhance your programming toolkit with these versatile solutions.
https://plugfox.dev/harness-the-power-of-anonymous-functions-in-dart/
#tipoftheday #dart #dartdev #dartlang #flutter #flutterdev #plugfox #…
❤11
3 Apr 2023, 16:12 UTC≈1,490 views16 reactionsread 8 August 2026 In Flutter and Dart applications, it is common to encounter scenarios where a class depends on an asynchronous operation. For instance, a client or service may need to fetch data from a network, or a database may need to establish a connection before being utilized. There are various ways to handle these dependencies efficiently. This article will explore five different approaches to managing asynchronous dependencie…
❤16
16 Mar 2023, 13:13 UTC≈1,430 views15 reactionsread 8 August 2026 Forwarded from @dartside
#dart #flutter #benchmark #note #performance #bytes
Performance benchmark of different ways to append data to a list in dart.
BytesBuilder vs AddAll vs Spread vs Concatenation
https://gist.github.com/PlugFox/9849994d1f229967ef5dc408cb6b7647
❤15
17 Jan 2023, 11:45 UTC≈2,430 views29 reactionsread 8 August 2026 Photo
#tipoftheday #dart #dartdev #dartlang #flutter #flutterdev #plugfox
❤29
Showing the 12 most recent of 19 posts we hold for @dart_tips. View and reaction counts are the latest single reading for each post, not a live figure, and a recent post is still accumulating both. A view count marked ≈ was rounded by Telegram before we ever saw it — t.me prints views in full below 1,000 and to three significant figures above, so ≈1,200,000 means somewhere between 1,150,000 and 1,249,999. Unmarked counts are exact. Text is reproduced from the public post preview and truncated for length.