Ever wish there was an easy way to add rich animation to your Flutter UIs? I did, so when we started working on the Wonderous app, it seemed like the perfect excuse to build a best of breed open-source animation package.
Continue reading →Category / Flutter
Flutter: Speed up your workflow with a custom project creation script
For some reason, starting a new project always brings a small feeling of inherent joy and excitement. There is something about a clean slate that is just very comforting, the lack of constraints, the promise of the unknown!
Continue reading →XD to Flutter v4: Better Layout Code
v4.0 of the “XD to Flutter” plugin is available now, with a focus on simplifying and improving the Dart code it generates.
Building on v3’s focus on improving the developer experience, v4 includes a fairly significant refactor of how layout code is generated by the plugin to enable smarter, cleaner results.
Continue reading →Flutter: Introducing `url_router` – A simpler Router controller.
When it comes to implementing a url-based Router
(aka Nav2) there are really 2 high-level components to the API:
- A controller to read/write to the current url
- A parsing/matching system to convert a url into a stack of views, or pages.
The interesting thing here, is that the controller portion, is a fairly stable, boring API. Reading or writing the url
location, or accessing queryParams
is all pretty straight-forward. Really all you are doing here is setting a string value, and parsing query params using the URI
class.
Flutter: Our favorite pub.dev libraries
There are so many great libraries on pub.dev these days it can be hard to sift through them all. The flutter team maintains their own list of favorites, and we thought it might be worthwhile to put together a list of our own favorite libs!
Continue reading →Flutter: Easily add CI testing with GitHub Actions
One of the great things about Github Actions is how easily it lets you setup continuous integration testing for your flutter applications. In this post we’ll go through the basic implementation of a CI workflow in flutter.
Continue reading →Flutter: Introducing `RoutedWidgetSwitcher`
We’ve recently released a new package for use with all “Nav 2” implementations, called routed_widget_switcher
: https://pub.dev/packages/routed_widget_switcher
It allows you to declaratively switch child widgets based on the current Router
location:
class SideBar extends StatelessWidget { Widget build(_){ return RoutedSwitcher( builders: (info) => [ Routed('*', MainMenu.new), Routed('/dashboard', DashboardMenu.new), Routed('/settings', SettingsMenu.new), ]); } }Continue reading →
Flutter: Adding (scalable) state management to the new `skeleton` template
Recently we took a deep dive into the new skeleton
template included in the Flutter SDK. As noted in the article, one of the big missing pieces in the template is a scalable state management solution with dependency injection and data-binding.
Given that, we thought it would be informative to convert it to use a couple of popular state management libraries, specifically riverpod
and GetItMixin
.